IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 5519


Ignore:
Timestamp:
Nov 15, 2005, 12:20:17 PM (21 years ago)
Author:
desonia
Message:

modifications due to psMetadataLookupPtr now incrementing the reference count.

Location:
trunk/psLib
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/psLib/src/astro/psEarthOrientation.c

    r5513 r5519  
    88*  @author Robert Daniel DeSonia, MHPCC
    99*
    10 *  @version $Revision: 1.13 $ $Name: not supported by cvs2svn $
    11 *  @date $Date: 2005-11-14 23:44:35 $
     10*  @version $Revision: 1.14 $ $Name: not supported by cvs2svn $
     11*  @date $Date: 2005-11-15 22:19:29 $
    1212*
    1313*  Copyright 2005 Maui High Performance Computing Center, University of Hawaii
     
    8686    bool success = false;
    8787    // Get table format
    88     char* tableFormat = psMetadataLookupPtr(&success, eocMetadata, "psLib.eoc.precession.table.format");
     88    char* tableFormat = psMetadataLookupStr(&success, eocMetadata, "psLib.eoc.precession.table.format");
    8989    if(! success || tableFormat == NULL) {
    9090        psError(PS_ERR_BAD_PARAMETER_VALUE, true, PS_ERRORTEXT_psTime_LOOKUP_METADATA_FAILED,
     
    9393    }
    9494
    95     char* xTableName = psMetadataLookupPtr(&success, eocMetadata, "psLib.eoc.precession.table.file.x");
     95    char* xTableName = psMetadataLookupStr(&success, eocMetadata, "psLib.eoc.precession.table.file.x");
    9696    if(! success || xTableName == NULL) {
     97        psFree(tableFormat);
    9798        psError(PS_ERR_BAD_PARAMETER_VALUE, true, PS_ERRORTEXT_psTime_LOOKUP_METADATA_FAILED,
    9899                "psLib.eoc.precession.x.file");
     
    100101    }
    101102
    102     char* yTableName = psMetadataLookupPtr(&success, eocMetadata, "psLib.eoc.precession.table.file.y");
     103    char* yTableName = psMetadataLookupStr(&success, eocMetadata, "psLib.eoc.precession.table.file.y");
    103104    if(! success || yTableName == NULL) {
     105        psFree(tableFormat);
     106        psFree(xTableName);
    104107        psError(PS_ERR_BAD_PARAMETER_VALUE, true, PS_ERRORTEXT_psTime_LOOKUP_METADATA_FAILED,
    105108                "psLib.eoc.precession.y.file");
     
    107110    }
    108111
    109     char* sTableName = psMetadataLookupPtr(&success, eocMetadata, "psLib.eoc.precession.table.file.s");
     112    char* sTableName = psMetadataLookupStr(&success, eocMetadata, "psLib.eoc.precession.table.file.s");
    110113    if(! success || sTableName == NULL) {
     114        psFree(tableFormat);
     115        psFree(xTableName);
     116        psFree(yTableName);
    111117        psError(PS_ERR_BAD_PARAMETER_VALUE, true, PS_ERRORTEXT_psTime_LOOKUP_METADATA_FAILED,
    112118                "psLib.eoc.precession.s.file");
     
    116122    yTable = psVectorsReadFromFile(yTableName, tableFormat);
    117123    sTable = psVectorsReadFromFile(sTableName, tableFormat);
     124    psFree(tableFormat);
     125    psFree(xTableName);
     126    psFree(yTableName);
     127    psFree(sTableName);
     128
    118129    if(xTable == NULL || yTable == NULL || sTable == NULL) {
    119130        // XXX: need to move the error message to the error messages file.
     
    131142    psVector* yCoeff = psMetadataLookupPtr(&success, eocMetadata, "psLib.eoc.precession.poly.y");
    132143    if(! success || yCoeff == NULL || yCoeff->type.type != PS_TYPE_F64) {
     144        psFree(xCoeff);
    133145        psError(PS_ERR_BAD_PARAMETER_VALUE, true, PS_ERRORTEXT_psTime_LOOKUP_METADATA_FAILED,
    134146                "psLib.eoc.precession.poly.y");
     
    137149    psVector* sCoeff = psMetadataLookupPtr(&success, eocMetadata, "psLib.eoc.precession.poly.s");
    138150    if(! success || sCoeff == NULL || sCoeff->type.type != PS_TYPE_F64) {
     151        psFree(xCoeff);
     152        psFree(yCoeff);
    139153        psError(PS_ERR_BAD_PARAMETER_VALUE, true, PS_ERRORTEXT_psTime_LOOKUP_METADATA_FAILED,
    140154                "psLib.eoc.precession.poly.s");
     
    147161    sPoly = psPolynomial1DAlloc(sCoeff->n, PS_POLYNOMIAL_ORD);
    148162    memcpy(sPoly->coeff, sCoeff->data.F64,PSELEMTYPE_SIZEOF(PS_TYPE_F64)*sCoeff->n);
     163
     164    psFree(xCoeff);
     165    psFree(yCoeff);
     166    psFree(sCoeff);
    149167
    150168    return true;
  • trunk/psLib/src/fits/psFitsTable.c

    r5511 r5519  
    77 *  @author Robert DeSonia, MHPCC
    88 *
    9  *  @version $Revision: 1.1 $ $Name: not supported by cvs2svn $
    10  *  @date $Date: 2005-11-14 22:18:30 $
     9 *  @version $Revision: 1.2 $ $Name: not supported by cvs2svn $
     10 *  @date $Date: 2005-11-15 22:20:13 $
    1111 *
    1212 *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
     
    699699    }
    700700
    701     char* extname = NULL;
     701    psString extname = NULL;
    702702    if (header != NULL) {
    703         extname = psMetadataLookupPtr(NULL, header, "EXTNAME");
     703        extname = psMetadataLookupStr(NULL, header, "EXTNAME");
    704704        if ( extname == NULL) {
    705             extname = psMetadataLookupPtr(NULL, header, "HDUNAME");
     705            extname = psMetadataLookupStr(NULL, header, "HDUNAME");
    706706        }
    707707    }
     
    719719    psFree(columnNames);
    720720    psFree(columnTypes);
     721    psFree(extname);
    721722
    722723    // fill in the table elements with data
     
    747748            psArray* colArray = psArrayAlloc(table->n);
    748749            for (row = 0; row < table->n; row++) {
    749                 colArray->data[row] = psMemIncrRefCounter(
    750                                           psMetadataLookupStr(NULL,
    751                                                               table->data[row],
    752                                                               item->name));
     750                colArray->data[row] =psMetadataLookupStr(NULL,
     751                                     table->data[row],
     752                                     item->name);
    753753            }
    754754            fits_write_col_str(fits->fd,
  • trunk/psLib/src/types/psMetadata.c

    r5517 r5519  
    1212 *  @author Ross Harman, MHPCC
    1313 *
    14  *  @version $Revision: 1.89 $ $Name: not supported by cvs2svn $
    15  *  @date $Date: 2005-11-15 20:10:32 $
     14 *  @version $Revision: 1.90 $ $Name: not supported by cvs2svn $
     15 *  @date $Date: 2005-11-15 22:20:14 $
    1616 *
    1717 *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
     
    613613        return NULL;
    614614    } else {
    615         return metadataItem->data.V;
     615        return psMemIncrRefCounter(metadataItem->data.V);
    616616    }
    617617}
     
    831831}
    832832
    833 psMetadata *psMetadataLookupMD(bool *status, const
    834                                psMetadata *md,
     833psMetadata *psMetadataLookupMD(bool *status,
     834                               const psMetadata *md,
    835835                               const char *key)
    836836{
     
    857857            *status = true;
    858858        }
    859         value = item->data.md; // The requested metadata
     859        value = psMemIncrRefCounter(item->data.md); // The requested metadata
    860860    }
    861861    return value;
     
    890890            *status = true;
    891891        }
    892         //        value = item->data.V; // The requested metadata
    893892        value = psStringNCopy(item->data.V, strlen(item->data.V) );
    894893    }
  • trunk/psLib/test/fits/tst_psFits.c

    r5511 r5519  
    66*  @author Robert DeSonia, MHPCC
    77*
    8 *  @version $Revision: 1.12 $ $Name: not supported by cvs2svn $
    9 *  @date $Date: 2005-11-14 22:18:38 $
     8*  @version $Revision: 1.13 $ $Name: not supported by cvs2svn $
     9*  @date $Date: 2005-11-15 22:20:16 $
    1010*
    1111*  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
     
    738738        psF64 dblItem = psMetadataLookupF64(NULL,header, "MYDBL");
    739739        psMetadataItem* boolItem = psMetadataLookup(header, "MYBOOL");
    740         char* strItem = psMetadataLookupPtr(NULL, header, "MYSTR");
     740        psString strItem = psMetadataLookupStr(NULL, header, "MYSTR");
    741741
    742742        if (intItem != hdunum) {
     
    773773            return 24;
    774774        }
     775
     776        psFree(strItem);
    775777
    776778        psFree(header);
     
    858860        }
    859861
     862        psFree(header);
    860863    }
    861864
     
    902905        }
    903906
     907        psFree(header);
    904908    }
    905909
     
    10131017            return 26;
    10141018        }
     1019
     1020        psFree(strItem);
     1021        psFree(vecItem);
    10151022    }
    10161023
  • trunk/psLib/test/types/tst_psMetadata_04.c

    r5454 r5519  
    2525*  @author  Ross Harman, MHPCC
    2626*
    27 *  @version $Revision: 1.7 $  $Name: not supported by cvs2svn $
    28 *  @date  $Date: 2005-10-29 00:05:53 $
     27*  @version $Revision: 1.8 $  $Name: not supported by cvs2svn $
     28*  @date  $Date: 2005-11-15 22:20:17 $
    2929*
    3030*  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
     
    197197    // Test I - Lookup metadata item and return psVector pointer
    198198    printPositiveTestHeader(stdout, "psMetadata", "Test I - Lookup metadata item and return psVector pointer");
    199     psVector *valueVec = NULL;
    200     valueVec = psMetadataLookupPtr(&status, metadata, "myItem6");
     199    psVector *valueVec = psMetadataLookupPtr(&status, metadata, "myItem6");
    201200    if(valueVec != vec) {
    202201        printf("ERROR: Bad vector pointer\n");
     
    206205        return 17;
    207206    }
     207    psFree(valueVec);
    208208    printFooter(stdout, "psMetadata", "Test I - Lookup metadata item and return psVector pointer", true);
    209209
     
    303303        return 24;
    304304    }
     305    psFree(valueVec);
    305306    printFooter(stdout, "psMetadata","Test P - Attempt get psVector value of non-existant metadata item",true);
    306307
  • trunk/psLib/test/types/tst_psMetadata_07.c

    r5296 r5519  
    1414*  @author  David Robbins, MHPCC
    1515*
    16 *  @version $Revision: 1.13 $  $Name: not supported by cvs2svn $
    17 *  @date  $Date: 2005-10-12 21:52:52 $
     16*  @version $Revision: 1.14 $  $Name: not supported by cvs2svn $
     17*  @date  $Date: 2005-11-15 22:20:17 $
    1818*
    1919*  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
     
    219219    psFree(item);
    220220    psFree(vecptr);
     221    psFree(vecptr2);
    221222    psFree(md);
    222223    return 0;
Note: See TracChangeset for help on using the changeset viewer.