IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Jan 6, 2006, 6:46:10 PM (21 years ago)
Author:
jhoblitt
Message:

fix tests to work with per table data
minor pslib 0.9.0 compatibility fixes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/glueforge/templates/psdb/objectfrommetadata_c.tt

    r5907 r5950  
    1010int main ()
    1111{
    12     psMetadata      *md;
    13     [% indented(table.object_name, "*object") %];
     12[% FOREACH table = tables -%]
     13    {
     14        psMetadata      *md;
     15        [% indented(table.object_name, "*object") %];
    1416
    15     md = psMetadataAlloc();
     17        md = psMetadataAlloc();
    1618[% FOREACH item = table.columns -%]
    1719[% IF item.type == "S32" or item.type == "F32" or item.type == "F64" -%]
    18     if (!psMetadataAdd[% item.type %](md, PS_LIST_TAIL, "[% item.name %]", NULL, [% item.test %])) {
     20        if (!psMetadataAdd[% item.type %](md, PS_LIST_TAIL, "[% item.name %]", 0, NULL, [% item.test %])) {
    1921[% ELSIF item.type == "STR" -%]
    20     if (!psMetadataAddStr(md, PS_LIST_TAIL, "[% item.name %]", NULL, [% item.test %])) {
     22        if (!psMetadataAddStr(md, PS_LIST_TAIL, "[% item.name %]", 0, NULL, [% item.test %])) {
    2123[% ELSIF item.type == "BOOL" -%]
    22     if (!psMetadataAdd(md, PS_LIST_TAIL, "[% item.name %]", PS_DATA_BOOL, NULL, [% item.test %])) {
     24        if (!psMetadataAdd(md, PS_LIST_TAIL, "[% item.name %]", PS_DATA_BOOL, NULL, [% item.test %])) {
    2325[% END -%]
    24         psFree(md);
    25         exit(EXIT_FAILURE);
    26     }
     26            psFree(md);
     27            exit(EXIT_FAILURE);
     28        }
    2729[% END -%]
    2830
    29     object = [% table.namespace %]ObjectFromMetadata(md);
    30     if (!object) {
     31        object = [% table.namespace %]ObjectFromMetadata(md);
     32        if (!object) {
     33            psFree(md);
     34            exit(EXIT_FAILURE);
     35        }
     36
    3137        psFree(md);
    32         exit(EXIT_FAILURE);
    33     }
    34 
    35     psFree(md);
    3638
    3739[% FOREACH item = table.columns -%]
    3840[% IF item.type == "S32" or item.type == "F32" or item.type == "F64" or item.type == "BOOL" -%]
    39     if (!object->[% item.name %] == [% item.test %]) {
     41        if (!object->[% item.name %] == [% item.test %]) {
    4042[% ELSIF item.type == "STR" -%]
    41     if (strncmp(object->[% item.name %], [% item.test %], MAX_STRING_LENGTH)) {
     43        if (strncmp(object->[% item.name %], [% item.test %], MAX_STRING_LENGTH)) {
    4244[% END -%]
    43         psFree(object);
    44         exit(EXIT_FAILURE);
    45     }
     45            psFree(object);
     46            exit(EXIT_FAILURE);
     47        }
    4648[% END -%]
    4749
    48     psFree(object);
     50        psFree(object);
     51    }
    4952
     53[% END -%]
    5054    exit(EXIT_SUCCESS);
    5155}
Note: See TracChangeset for help on using the changeset viewer.