IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 7937 for trunk/psLib/src/types


Ignore:
Timestamp:
Jul 18, 2006, 5:43:14 PM (20 years ago)
Author:
drobbin
Message:

Edited psMetadataItemTransfer. Returns false for NULL out input.

Location:
trunk/psLib/src/types
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/psLib/src/types/psMetadata.c

    r7933 r7937  
    1212 *  @author Ross Harman, MHPCC
    1313 *
    14  *  @version $Revision: 1.119 $ $Name: not supported by cvs2svn $
    15  *  @date $Date: 2006-07-18 21:53:25 $
     14 *  @version $Revision: 1.120 $ $Name: not supported by cvs2svn $
     15 *  @date $Date: 2006-07-19 03:43:14 $
    1616 *
    1717 *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
     
    465465
    466466// may need to extend this to change the keyname in the copy
    467 psMetadata *psMetadataItemTransfer(psMetadata *out, const psMetadata *in, const char *key)
    468 {
    469     PS_ASSERT_PTR_NON_NULL(in, NULL);
     467bool psMetadataItemTransfer(psMetadata *out,
     468                            const psMetadata *in,
     469                            const char *key)
     470{
     471    if (in == NULL) {
     472        psError(PS_ERR_BAD_PARAMETER_NULL, true,
     473                "psMetadataItemTransfer:  'in' cannot be NULL.\n");
     474        return false;
     475    }
     476    if (out == NULL) {
     477        psError(PS_ERR_BAD_PARAMETER_NULL, true,
     478                "psMetadataItemTransfer:  'out' cannot be NULL.\n");
     479        return false;
     480    }
    470481    if (key == NULL) {
    471482        psError(PS_ERR_BAD_PARAMETER_NULL, true,
    472483                "psMetadataItemTransfer:  'key' cannot be NULL.\n");
    473         return NULL;
     484        return false;
    474485    }
    475486
    476487    psMetadataItem *item = psMetadataLookup(in, key);
    477488    if (!item) {
    478         return NULL;
    479     }
    480     if (out == NULL) {
    481         out = psMetadataAlloc();
    482     }
    483     if (!psMetadataAddItem(out, item, PS_LIST_HEAD, PS_META_DEFAULT) ) {
    484         psFree(out);
    485         return NULL;
    486     }
    487 
    488     return out;
     489        psError(PS_ERR_BAD_PARAMETER_VALUE, true,
     490                "psMetadataItemTransfer:  Could not find 'key' in psMetadata 'in'.\n");
     491        return false;
     492    }
     493    if (!psMetadataAddItem(out, item, PS_LIST_TAIL, PS_META_REPLACE) ) {
     494        psError(PS_ERR_BAD_PARAMETER_VALUE, true,
     495                "psMetadataItemTransfer:  Could not add item to psMetadata 'out'.\n");
     496        return false;
     497    }
     498
     499    return true;
    489500}
    490501
  • trunk/psLib/src/types/psMetadata.h

    r7933 r7937  
    1111*  @author Ross Harman, MHPCC
    1212*
    13 *  @version $Revision: 1.82 $ $Name: not supported by cvs2svn $
    14 *  @date $Date: 2006-07-18 21:53:25 $
     13*  @version $Revision: 1.83 $ $Name: not supported by cvs2svn $
     14*  @date $Date: 2006-07-19 03:43:14 $
    1515*
    1616*  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
     
    400400 *  @return bool:       True if successful, otherwise false.
    401401 */
    402 psMetadata *psMetadataItemTransfer(
     402bool psMetadataItemTransfer(
    403403    psMetadata *out,                   ///< output Metadata container for copying.
    404404    const psMetadata *in,              ///< Metadata collection from which to copy.
Note: See TracChangeset for help on using the changeset viewer.