IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Dec 12, 2007, 9:53:04 AM (18 years ago)
Author:
jhoblitt
Message:

update

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ippdb/src/ippdb.c

    r15766 r15792  
    486486    for (i = 0; i < rowSet->n; i++) {
    487487        pzDataStoreRow *object = pzDataStoreObjectFromMetadata(rowSet->data[i]);
     488        if (!object) {
     489            psFree(object);
     490            psFree(returnSet);
     491            psError(PS_ERR_UNKNOWN, false, "database error");
     492            return NULL;
     493        }
    488494        psArrayAdd(returnSet, 0, object);
    489495        psFree(object);
     
    891897    for (i = 0; i < rowSet->n; i++) {
    892898        summitExpRow *object = summitExpObjectFromMetadata(rowSet->data[i]);
     899        if (!object) {
     900            psFree(object);
     901            psFree(returnSet);
     902            psError(PS_ERR_UNKNOWN, false, "database error");
     903            return NULL;
     904        }
    893905        psArrayAdd(returnSet, 0, object);
    894906        psFree(object);
     
    13401352    for (i = 0; i < rowSet->n; i++) {
    13411353        summitImfileRow *object = summitImfileObjectFromMetadata(rowSet->data[i]);
     1354        if (!object) {
     1355            psFree(object);
     1356            psFree(returnSet);
     1357            psError(PS_ERR_UNKNOWN, false, "database error");
     1358            return NULL;
     1359        }
    13421360        psArrayAdd(returnSet, 0, object);
    13431361        psFree(object);
     
    16581676    for (i = 0; i < rowSet->n; i++) {
    16591677        pzPendingExpRow *object = pzPendingExpObjectFromMetadata(rowSet->data[i]);
     1678        if (!object) {
     1679            psFree(object);
     1680            psFree(returnSet);
     1681            psError(PS_ERR_UNKNOWN, false, "database error");
     1682            return NULL;
     1683        }
    16601684        psArrayAdd(returnSet, 0, object);
    16611685        psFree(object);
     
    20202044    for (i = 0; i < rowSet->n; i++) {
    20212045        pzPendingImfileRow *object = pzPendingImfileObjectFromMetadata(rowSet->data[i]);
     2046        if (!object) {
     2047            psFree(object);
     2048            psFree(returnSet);
     2049            psError(PS_ERR_UNKNOWN, false, "database error");
     2050            return NULL;
     2051        }
    20222052        psArrayAdd(returnSet, 0, object);
    20232053        psFree(object);
     
    23382368    for (i = 0; i < rowSet->n; i++) {
    23392369        pzDoneExpRow *object = pzDoneExpObjectFromMetadata(rowSet->data[i]);
     2370        if (!object) {
     2371            psFree(object);
     2372            psFree(returnSet);
     2373            psError(PS_ERR_UNKNOWN, false, "database error");
     2374            return NULL;
     2375        }
    23402376        psArrayAdd(returnSet, 0, object);
    23412377        psFree(object);
     
    27222758    for (i = 0; i < rowSet->n; i++) {
    27232759        pzDoneImfileRow *object = pzDoneImfileObjectFromMetadata(rowSet->data[i]);
     2760        if (!object) {
     2761            psFree(object);
     2762            psFree(returnSet);
     2763            psError(PS_ERR_UNKNOWN, false, "database error");
     2764            return NULL;
     2765        }
    27242766        psArrayAdd(returnSet, 0, object);
    27252767        psFree(object);
     
    31493191    for (i = 0; i < rowSet->n; i++) {
    31503192        newExpRow *object = newExpObjectFromMetadata(rowSet->data[i]);
     3193        if (!object) {
     3194            psFree(object);
     3195            psFree(returnSet);
     3196            psError(PS_ERR_UNKNOWN, false, "database error");
     3197            return NULL;
     3198        }
    31513199        psArrayAdd(returnSet, 0, object);
    31523200        psFree(object);
     
    34663514    for (i = 0; i < rowSet->n; i++) {
    34673515        newImfileRow *object = newImfileObjectFromMetadata(rowSet->data[i]);
     3516        if (!object) {
     3517            psFree(object);
     3518            psFree(returnSet);
     3519            psError(PS_ERR_UNKNOWN, false, "database error");
     3520            return NULL;
     3521        }
    34683522        psArrayAdd(returnSet, 0, object);
    34693523        psFree(object);
     
    35593613static void rawExpRowFree(rawExpRow *object);
    35603614
    3561 rawExpRow *rawExpRowAlloc(psS64 exp_id, const char *exp_name, const char *camera, const char *telescope, psTime* dateobs, const char *exp_tag, const char *exp_type, const char *filelevel, const char *workdir, const char *reduction, const char *filter, psF32 airmass, psF64 ra, psF64 decl, psF32 exp_time, psF32 sat_pixel_frac, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 alt, psF64 az, psF32 ccd_temp, psF64 posang, psF32 M1_x, psF32 M1_y, psF32 M1_z, psF32 M1_tip, psF32 M1_tilt, psF32 M2_x, psF32 M2_y, psF32 M2_z, psF32 M2_tip, psF32 M2_tilt, psF32 env_temperature, psF32 env_humidity, psF32 env_wind_speed, psF32 env_wind_dir, psF32 pon_time, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *object, psF32 solang, psS16 fault)
     3615rawExpRow *rawExpRowAlloc(psS64 exp_id, const char *exp_name, const char *camera, const char *telescope, psTime* dateobs, const char *exp_tag, const char *exp_type, const char *filelevel, const char *workdir, const char *reduction, const char *filter, const char *comment, psF32 airmass, psF64 ra, psF64 decl, psF32 exp_time, psF32 sat_pixel_frac, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 alt, psF64 az, psF32 ccd_temp, psF64 posang, psF32 m1_x, psF32 m1_y, psF32 m1_z, psF32 m1_tip, psF32 m1_tilt, psF32 m2_x, psF32 m2_y, psF32 m2_z, psF32 m2_tip, psF32 m2_tilt, psF32 env_temperature, psF32 env_humidity, psF32 env_wind_speed, psF32 env_wind_dir, psF32 teltemp_m1, psF32 teltemp_m1cell, psF32 teltemp_m2, psF32 teltemp_spider, psF32 teltemp_truss, psF32 teltemp_extra, psF32 pon_time, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *object, psF32 solang, psS16 fault)
    35623616{
    35633617    rawExpRow       *_object;
     
    35773631    _object->reduction = psStringCopy(reduction);
    35783632    _object->filter = psStringCopy(filter);
     3633    _object->comment = psStringCopy(comment);
    35793634    _object->airmass = airmass;
    35803635    _object->ra = ra;
     
    35893644    _object->ccd_temp = ccd_temp;
    35903645    _object->posang = posang;
    3591     _object->M1_x = M1_x;
    3592     _object->M1_y = M1_y;
    3593     _object->M1_z = M1_z;
    3594     _object->M1_tip = M1_tip;
    3595     _object->M1_tilt = M1_tilt;
    3596     _object->M2_x = M2_x;
    3597     _object->M2_y = M2_y;
    3598     _object->M2_z = M2_z;
    3599     _object->M2_tip = M2_tip;
    3600     _object->M2_tilt = M2_tilt;
     3646    _object->m1_x = m1_x;
     3647    _object->m1_y = m1_y;
     3648    _object->m1_z = m1_z;
     3649    _object->m1_tip = m1_tip;
     3650    _object->m1_tilt = m1_tilt;
     3651    _object->m2_x = m2_x;
     3652    _object->m2_y = m2_y;
     3653    _object->m2_z = m2_z;
     3654    _object->m2_tip = m2_tip;
     3655    _object->m2_tilt = m2_tilt;
    36013656    _object->env_temperature = env_temperature;
    36023657    _object->env_humidity = env_humidity;
    36033658    _object->env_wind_speed = env_wind_speed;
    36043659    _object->env_wind_dir = env_wind_dir;
     3660    _object->teltemp_m1 = teltemp_m1;
     3661    _object->teltemp_m1cell = teltemp_m1cell;
     3662    _object->teltemp_m2 = teltemp_m2;
     3663    _object->teltemp_spider = teltemp_spider;
     3664    _object->teltemp_truss = teltemp_truss;
     3665    _object->teltemp_extra = teltemp_extra;
    36053666    _object->pon_time = pon_time;
    36063667    _object->user_1 = user_1;
     
    36283689    psFree(object->reduction);
    36293690    psFree(object->filter);
     3691    psFree(object->comment);
    36303692    psFree(object->object);
    36313693}
     
    36893751        return false;
    36903752    }
     3753    if (!psMetadataAdd(md, PS_LIST_TAIL, "comment", PS_DATA_STRING, NULL, "80")) {
     3754        psError(PS_ERR_UNKNOWN, false, "failed to add item comment");
     3755        psFree(md);
     3756        return false;
     3757    }
    36913758    if (!psMetadataAdd(md, PS_LIST_TAIL, "airmass", PS_DATA_F32, NULL, 0.0)) {
    36923759        psError(PS_ERR_UNKNOWN, false, "failed to add item airmass");
     
    37493816        return false;
    37503817    }
    3751     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_x", PS_DATA_F32, NULL, 0.0)) {
    3752         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_x");
    3753         psFree(md);
    3754         return false;
    3755     }
    3756     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_y", PS_DATA_F32, NULL, 0.0)) {
    3757         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_y");
    3758         psFree(md);
    3759         return false;
    3760     }
    3761     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_z", PS_DATA_F32, NULL, 0.0)) {
    3762         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_z");
    3763         psFree(md);
    3764         return false;
    3765     }
    3766     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_tip", PS_DATA_F32, NULL, 0.0)) {
    3767         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_tip");
    3768         psFree(md);
    3769         return false;
    3770     }
    3771     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_tilt", PS_DATA_F32, NULL, 0.0)) {
    3772         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_tilt");
    3773         psFree(md);
    3774         return false;
    3775     }
    3776     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_x", PS_DATA_F32, NULL, 0.0)) {
    3777         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_x");
    3778         psFree(md);
    3779         return false;
    3780     }
    3781     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_y", PS_DATA_F32, NULL, 0.0)) {
    3782         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_y");
    3783         psFree(md);
    3784         return false;
    3785     }
    3786     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_z", PS_DATA_F32, NULL, 0.0)) {
    3787         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_z");
    3788         psFree(md);
    3789         return false;
    3790     }
    3791     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_tip", PS_DATA_F32, NULL, 0.0)) {
    3792         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_tip");
    3793         psFree(md);
    3794         return false;
    3795     }
    3796     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_tilt", PS_DATA_F32, NULL, 0.0)) {
    3797         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_tilt");
     3818    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_x", PS_DATA_F32, NULL, 0.0)) {
     3819        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_x");
     3820        psFree(md);
     3821        return false;
     3822    }
     3823    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_y", PS_DATA_F32, NULL, 0.0)) {
     3824        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_y");
     3825        psFree(md);
     3826        return false;
     3827    }
     3828    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_z", PS_DATA_F32, NULL, 0.0)) {
     3829        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_z");
     3830        psFree(md);
     3831        return false;
     3832    }
     3833    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_tip", PS_DATA_F32, NULL, 0.0)) {
     3834        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_tip");
     3835        psFree(md);
     3836        return false;
     3837    }
     3838    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_tilt", PS_DATA_F32, NULL, 0.0)) {
     3839        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_tilt");
     3840        psFree(md);
     3841        return false;
     3842    }
     3843    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_x", PS_DATA_F32, NULL, 0.0)) {
     3844        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_x");
     3845        psFree(md);
     3846        return false;
     3847    }
     3848    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_y", PS_DATA_F32, NULL, 0.0)) {
     3849        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_y");
     3850        psFree(md);
     3851        return false;
     3852    }
     3853    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_z", PS_DATA_F32, NULL, 0.0)) {
     3854        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_z");
     3855        psFree(md);
     3856        return false;
     3857    }
     3858    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_tip", PS_DATA_F32, NULL, 0.0)) {
     3859        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_tip");
     3860        psFree(md);
     3861        return false;
     3862    }
     3863    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_tilt", PS_DATA_F32, NULL, 0.0)) {
     3864        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_tilt");
    37983865        psFree(md);
    37993866        return false;
     
    38193886        return false;
    38203887    }
     3888    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_m1", PS_DATA_F32, NULL, 0.0)) {
     3889        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_m1");
     3890        psFree(md);
     3891        return false;
     3892    }
     3893    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_m1cell", PS_DATA_F32, NULL, 0.0)) {
     3894        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_m1cell");
     3895        psFree(md);
     3896        return false;
     3897    }
     3898    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_m2", PS_DATA_F32, NULL, 0.0)) {
     3899        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_m2");
     3900        psFree(md);
     3901        return false;
     3902    }
     3903    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_spider", PS_DATA_F32, NULL, 0.0)) {
     3904        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_spider");
     3905        psFree(md);
     3906        return false;
     3907    }
     3908    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_truss", PS_DATA_F32, NULL, 0.0)) {
     3909        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_truss");
     3910        psFree(md);
     3911        return false;
     3912    }
     3913    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_extra", PS_DATA_F32, NULL, 0.0)) {
     3914        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_extra");
     3915        psFree(md);
     3916        return false;
     3917    }
    38213918    if (!psMetadataAdd(md, PS_LIST_TAIL, "pon_time", PS_DATA_F32, NULL, 0.0)) {
    38223919        psError(PS_ERR_UNKNOWN, false, "failed to add item pon_time");
     
    38773974}
    38783975
    3879 bool rawExpInsert(psDB * dbh, psS64 exp_id, const char *exp_name, const char *camera, const char *telescope, psTime* dateobs, const char *exp_tag, const char *exp_type, const char *filelevel, const char *workdir, const char *reduction, const char *filter, psF32 airmass, psF64 ra, psF64 decl, psF32 exp_time, psF32 sat_pixel_frac, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 alt, psF64 az, psF32 ccd_temp, psF64 posang, psF32 M1_x, psF32 M1_y, psF32 M1_z, psF32 M1_tip, psF32 M1_tilt, psF32 M2_x, psF32 M2_y, psF32 M2_z, psF32 M2_tip, psF32 M2_tilt, psF32 env_temperature, psF32 env_humidity, psF32 env_wind_speed, psF32 env_wind_dir, psF32 pon_time, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *object, psF32 solang, psS16 fault)
     3976bool rawExpInsert(psDB * dbh, psS64 exp_id, const char *exp_name, const char *camera, const char *telescope, psTime* dateobs, const char *exp_tag, const char *exp_type, const char *filelevel, const char *workdir, const char *reduction, const char *filter, const char *comment, psF32 airmass, psF64 ra, psF64 decl, psF32 exp_time, psF32 sat_pixel_frac, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 alt, psF64 az, psF32 ccd_temp, psF64 posang, psF32 m1_x, psF32 m1_y, psF32 m1_z, psF32 m1_tip, psF32 m1_tilt, psF32 m2_x, psF32 m2_y, psF32 m2_z, psF32 m2_tip, psF32 m2_tilt, psF32 env_temperature, psF32 env_humidity, psF32 env_wind_speed, psF32 env_wind_dir, psF32 teltemp_m1, psF32 teltemp_m1cell, psF32 teltemp_m2, psF32 teltemp_spider, psF32 teltemp_truss, psF32 teltemp_extra, psF32 pon_time, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *object, psF32 solang, psS16 fault)
    38803977{
    38813978    psMetadata *md = psMetadataAlloc();
     
    39354032        return false;
    39364033    }
     4034    if (!psMetadataAdd(md, PS_LIST_TAIL, "comment", PS_DATA_STRING, NULL, comment)) {
     4035        psError(PS_ERR_UNKNOWN, false, "failed to add item comment");
     4036        psFree(md);
     4037        return false;
     4038    }
    39374039    if (!psMetadataAdd(md, PS_LIST_TAIL, "airmass", PS_DATA_F32, NULL, airmass)) {
    39384040        psError(PS_ERR_UNKNOWN, false, "failed to add item airmass");
     
    39954097        return false;
    39964098    }
    3997     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_x", PS_DATA_F32, NULL, M1_x)) {
    3998         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_x");
    3999         psFree(md);
    4000         return false;
    4001     }
    4002     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_y", PS_DATA_F32, NULL, M1_y)) {
    4003         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_y");
    4004         psFree(md);
    4005         return false;
    4006     }
    4007     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_z", PS_DATA_F32, NULL, M1_z)) {
    4008         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_z");
    4009         psFree(md);
    4010         return false;
    4011     }
    4012     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_tip", PS_DATA_F32, NULL, M1_tip)) {
    4013         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_tip");
    4014         psFree(md);
    4015         return false;
    4016     }
    4017     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_tilt", PS_DATA_F32, NULL, M1_tilt)) {
    4018         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_tilt");
    4019         psFree(md);
    4020         return false;
    4021     }
    4022     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_x", PS_DATA_F32, NULL, M2_x)) {
    4023         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_x");
    4024         psFree(md);
    4025         return false;
    4026     }
    4027     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_y", PS_DATA_F32, NULL, M2_y)) {
    4028         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_y");
    4029         psFree(md);
    4030         return false;
    4031     }
    4032     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_z", PS_DATA_F32, NULL, M2_z)) {
    4033         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_z");
    4034         psFree(md);
    4035         return false;
    4036     }
    4037     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_tip", PS_DATA_F32, NULL, M2_tip)) {
    4038         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_tip");
    4039         psFree(md);
    4040         return false;
    4041     }
    4042     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_tilt", PS_DATA_F32, NULL, M2_tilt)) {
    4043         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_tilt");
     4099    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_x", PS_DATA_F32, NULL, m1_x)) {
     4100        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_x");
     4101        psFree(md);
     4102        return false;
     4103    }
     4104    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_y", PS_DATA_F32, NULL, m1_y)) {
     4105        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_y");
     4106        psFree(md);
     4107        return false;
     4108    }
     4109    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_z", PS_DATA_F32, NULL, m1_z)) {
     4110        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_z");
     4111        psFree(md);
     4112        return false;
     4113    }
     4114    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_tip", PS_DATA_F32, NULL, m1_tip)) {
     4115        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_tip");
     4116        psFree(md);
     4117        return false;
     4118    }
     4119    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_tilt", PS_DATA_F32, NULL, m1_tilt)) {
     4120        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_tilt");
     4121        psFree(md);
     4122        return false;
     4123    }
     4124    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_x", PS_DATA_F32, NULL, m2_x)) {
     4125        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_x");
     4126        psFree(md);
     4127        return false;
     4128    }
     4129    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_y", PS_DATA_F32, NULL, m2_y)) {
     4130        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_y");
     4131        psFree(md);
     4132        return false;
     4133    }
     4134    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_z", PS_DATA_F32, NULL, m2_z)) {
     4135        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_z");
     4136        psFree(md);
     4137        return false;
     4138    }
     4139    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_tip", PS_DATA_F32, NULL, m2_tip)) {
     4140        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_tip");
     4141        psFree(md);
     4142        return false;
     4143    }
     4144    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_tilt", PS_DATA_F32, NULL, m2_tilt)) {
     4145        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_tilt");
    40444146        psFree(md);
    40454147        return false;
     
    40624164    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_wind_dir", PS_DATA_F32, NULL, env_wind_dir)) {
    40634165        psError(PS_ERR_UNKNOWN, false, "failed to add item env_wind_dir");
     4166        psFree(md);
     4167        return false;
     4168    }
     4169    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_m1", PS_DATA_F32, NULL, teltemp_m1)) {
     4170        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_m1");
     4171        psFree(md);
     4172        return false;
     4173    }
     4174    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_m1cell", PS_DATA_F32, NULL, teltemp_m1cell)) {
     4175        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_m1cell");
     4176        psFree(md);
     4177        return false;
     4178    }
     4179    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_m2", PS_DATA_F32, NULL, teltemp_m2)) {
     4180        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_m2");
     4181        psFree(md);
     4182        return false;
     4183    }
     4184    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_spider", PS_DATA_F32, NULL, teltemp_spider)) {
     4185        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_spider");
     4186        psFree(md);
     4187        return false;
     4188    }
     4189    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_truss", PS_DATA_F32, NULL, teltemp_truss)) {
     4190        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_truss");
     4191        psFree(md);
     4192        return false;
     4193    }
     4194    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_extra", PS_DATA_F32, NULL, teltemp_extra)) {
     4195        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_extra");
    40644196        psFree(md);
    40654197        return false;
     
    41334265bool rawExpInsertObject(psDB *dbh, rawExpRow *object)
    41344266{
    4135     return rawExpInsert(dbh, object->exp_id, object->exp_name, object->camera, object->telescope, object->dateobs, object->exp_tag, object->exp_type, object->filelevel, object->workdir, object->reduction, object->filter, object->airmass, object->ra, object->decl, object->exp_time, object->sat_pixel_frac, object->bg, object->bg_stdev, object->bg_mean_stdev, object->alt, object->az, object->ccd_temp, object->posang, object->M1_x, object->M1_y, object->M1_z, object->M1_tip, object->M1_tilt, object->M2_x, object->M2_y, object->M2_z, object->M2_tip, object->M2_tilt, object->env_temperature, object->env_humidity, object->env_wind_speed, object->env_wind_dir, object->pon_time, object->user_1, object->user_2, object->user_3, object->user_4, object->user_5, object->object, object->solang, object->fault);
     4267    return rawExpInsert(dbh, object->exp_id, object->exp_name, object->camera, object->telescope, object->dateobs, object->exp_tag, object->exp_type, object->filelevel, object->workdir, object->reduction, object->filter, object->comment, object->airmass, object->ra, object->decl, object->exp_time, object->sat_pixel_frac, object->bg, object->bg_stdev, object->bg_mean_stdev, object->alt, object->az, object->ccd_temp, object->posang, object->m1_x, object->m1_y, object->m1_z, object->m1_tip, object->m1_tilt, object->m2_x, object->m2_y, object->m2_z, object->m2_tip, object->m2_tilt, object->env_temperature, object->env_humidity, object->env_wind_speed, object->env_wind_dir, object->teltemp_m1, object->teltemp_m1cell, object->teltemp_m2, object->teltemp_spider, object->teltemp_truss, object->teltemp_extra, object->pon_time, object->user_1, object->user_2, object->user_3, object->user_4, object->user_5, object->object, object->solang, object->fault);
    41364268}
    41374269
     
    42614393        return false;
    42624394    }
     4395    if (!psMetadataAdd(md, PS_LIST_TAIL, "comment", PS_DATA_STRING, NULL, object->comment)) {
     4396        psError(PS_ERR_UNKNOWN, false, "failed to add item comment");
     4397        psFree(md);
     4398        return false;
     4399    }
    42634400    if (!psMetadataAdd(md, PS_LIST_TAIL, "airmass", PS_DATA_F32, NULL, object->airmass)) {
    42644401        psError(PS_ERR_UNKNOWN, false, "failed to add item airmass");
     
    43214458        return false;
    43224459    }
    4323     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_x", PS_DATA_F32, NULL, object->M1_x)) {
    4324         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_x");
    4325         psFree(md);
    4326         return false;
    4327     }
    4328     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_y", PS_DATA_F32, NULL, object->M1_y)) {
    4329         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_y");
    4330         psFree(md);
    4331         return false;
    4332     }
    4333     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_z", PS_DATA_F32, NULL, object->M1_z)) {
    4334         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_z");
    4335         psFree(md);
    4336         return false;
    4337     }
    4338     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_tip", PS_DATA_F32, NULL, object->M1_tip)) {
    4339         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_tip");
    4340         psFree(md);
    4341         return false;
    4342     }
    4343     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_tilt", PS_DATA_F32, NULL, object->M1_tilt)) {
    4344         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_tilt");
    4345         psFree(md);
    4346         return false;
    4347     }
    4348     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_x", PS_DATA_F32, NULL, object->M2_x)) {
    4349         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_x");
    4350         psFree(md);
    4351         return false;
    4352     }
    4353     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_y", PS_DATA_F32, NULL, object->M2_y)) {
    4354         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_y");
    4355         psFree(md);
    4356         return false;
    4357     }
    4358     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_z", PS_DATA_F32, NULL, object->M2_z)) {
    4359         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_z");
    4360         psFree(md);
    4361         return false;
    4362     }
    4363     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_tip", PS_DATA_F32, NULL, object->M2_tip)) {
    4364         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_tip");
    4365         psFree(md);
    4366         return false;
    4367     }
    4368     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_tilt", PS_DATA_F32, NULL, object->M2_tilt)) {
    4369         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_tilt");
     4460    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_x", PS_DATA_F32, NULL, object->m1_x)) {
     4461        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_x");
     4462        psFree(md);
     4463        return false;
     4464    }
     4465    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_y", PS_DATA_F32, NULL, object->m1_y)) {
     4466        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_y");
     4467        psFree(md);
     4468        return false;
     4469    }
     4470    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_z", PS_DATA_F32, NULL, object->m1_z)) {
     4471        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_z");
     4472        psFree(md);
     4473        return false;
     4474    }
     4475    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_tip", PS_DATA_F32, NULL, object->m1_tip)) {
     4476        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_tip");
     4477        psFree(md);
     4478        return false;
     4479    }
     4480    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_tilt", PS_DATA_F32, NULL, object->m1_tilt)) {
     4481        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_tilt");
     4482        psFree(md);
     4483        return false;
     4484    }
     4485    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_x", PS_DATA_F32, NULL, object->m2_x)) {
     4486        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_x");
     4487        psFree(md);
     4488        return false;
     4489    }
     4490    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_y", PS_DATA_F32, NULL, object->m2_y)) {
     4491        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_y");
     4492        psFree(md);
     4493        return false;
     4494    }
     4495    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_z", PS_DATA_F32, NULL, object->m2_z)) {
     4496        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_z");
     4497        psFree(md);
     4498        return false;
     4499    }
     4500    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_tip", PS_DATA_F32, NULL, object->m2_tip)) {
     4501        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_tip");
     4502        psFree(md);
     4503        return false;
     4504    }
     4505    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_tilt", PS_DATA_F32, NULL, object->m2_tilt)) {
     4506        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_tilt");
    43704507        psFree(md);
    43714508        return false;
     
    43914528        return false;
    43924529    }
     4530    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_m1", PS_DATA_F32, NULL, object->teltemp_m1)) {
     4531        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_m1");
     4532        psFree(md);
     4533        return false;
     4534    }
     4535    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_m1cell", PS_DATA_F32, NULL, object->teltemp_m1cell)) {
     4536        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_m1cell");
     4537        psFree(md);
     4538        return false;
     4539    }
     4540    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_m2", PS_DATA_F32, NULL, object->teltemp_m2)) {
     4541        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_m2");
     4542        psFree(md);
     4543        return false;
     4544    }
     4545    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_spider", PS_DATA_F32, NULL, object->teltemp_spider)) {
     4546        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_spider");
     4547        psFree(md);
     4548        return false;
     4549    }
     4550    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_truss", PS_DATA_F32, NULL, object->teltemp_truss)) {
     4551        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_truss");
     4552        psFree(md);
     4553        return false;
     4554    }
     4555    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_extra", PS_DATA_F32, NULL, object->teltemp_extra)) {
     4556        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_extra");
     4557        psFree(md);
     4558        return false;
     4559    }
    43934560    if (!psMetadataAdd(md, PS_LIST_TAIL, "pon_time", PS_DATA_F32, NULL, object->pon_time)) {
    43944561        psError(PS_ERR_UNKNOWN, false, "failed to add item pon_time");
     
    45004667        return false;
    45014668    }
     4669    char* comment = psMetadataLookupPtr(&status, md, "comment");
     4670    if (!status) {
     4671        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item comment");
     4672        return false;
     4673    }
    45024674    psF32 airmass = psMetadataLookupF32(&status, md, "airmass");
    45034675    if (!status) {
     
    45604732        return false;
    45614733    }
    4562     psF32 M1_x = psMetadataLookupF32(&status, md, "M1_x");
    4563     if (!status) {
    4564         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M1_x");
    4565         return false;
    4566     }
    4567     psF32 M1_y = psMetadataLookupF32(&status, md, "M1_y");
    4568     if (!status) {
    4569         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M1_y");
    4570         return false;
    4571     }
    4572     psF32 M1_z = psMetadataLookupF32(&status, md, "M1_z");
    4573     if (!status) {
    4574         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M1_z");
    4575         return false;
    4576     }
    4577     psF32 M1_tip = psMetadataLookupF32(&status, md, "M1_tip");
    4578     if (!status) {
    4579         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M1_tip");
    4580         return false;
    4581     }
    4582     psF32 M1_tilt = psMetadataLookupF32(&status, md, "M1_tilt");
    4583     if (!status) {
    4584         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M1_tilt");
    4585         return false;
    4586     }
    4587     psF32 M2_x = psMetadataLookupF32(&status, md, "M2_x");
    4588     if (!status) {
    4589         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M2_x");
    4590         return false;
    4591     }
    4592     psF32 M2_y = psMetadataLookupF32(&status, md, "M2_y");
    4593     if (!status) {
    4594         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M2_y");
    4595         return false;
    4596     }
    4597     psF32 M2_z = psMetadataLookupF32(&status, md, "M2_z");
    4598     if (!status) {
    4599         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M2_z");
    4600         return false;
    4601     }
    4602     psF32 M2_tip = psMetadataLookupF32(&status, md, "M2_tip");
    4603     if (!status) {
    4604         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M2_tip");
    4605         return false;
    4606     }
    4607     psF32 M2_tilt = psMetadataLookupF32(&status, md, "M2_tilt");
    4608     if (!status) {
    4609         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M2_tilt");
     4734    psF32 m1_x = psMetadataLookupF32(&status, md, "m1_x");
     4735    if (!status) {
     4736        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item m1_x");
     4737        return false;
     4738    }
     4739    psF32 m1_y = psMetadataLookupF32(&status, md, "m1_y");
     4740    if (!status) {
     4741        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item m1_y");
     4742        return false;
     4743    }
     4744    psF32 m1_z = psMetadataLookupF32(&status, md, "m1_z");
     4745    if (!status) {
     4746        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item m1_z");
     4747        return false;
     4748    }
     4749    psF32 m1_tip = psMetadataLookupF32(&status, md, "m1_tip");
     4750    if (!status) {
     4751        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item m1_tip");
     4752        return false;
     4753    }
     4754    psF32 m1_tilt = psMetadataLookupF32(&status, md, "m1_tilt");
     4755    if (!status) {
     4756        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item m1_tilt");
     4757        return false;
     4758    }
     4759    psF32 m2_x = psMetadataLookupF32(&status, md, "m2_x");
     4760    if (!status) {
     4761        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item m2_x");
     4762        return false;
     4763    }
     4764    psF32 m2_y = psMetadataLookupF32(&status, md, "m2_y");
     4765    if (!status) {
     4766        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item m2_y");
     4767        return false;
     4768    }
     4769    psF32 m2_z = psMetadataLookupF32(&status, md, "m2_z");
     4770    if (!status) {
     4771        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item m2_z");
     4772        return false;
     4773    }
     4774    psF32 m2_tip = psMetadataLookupF32(&status, md, "m2_tip");
     4775    if (!status) {
     4776        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item m2_tip");
     4777        return false;
     4778    }
     4779    psF32 m2_tilt = psMetadataLookupF32(&status, md, "m2_tilt");
     4780    if (!status) {
     4781        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item m2_tilt");
    46104782        return false;
    46114783    }
     
    46304802        return false;
    46314803    }
     4804    psF32 teltemp_m1 = psMetadataLookupF32(&status, md, "teltemp_m1");
     4805    if (!status) {
     4806        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item teltemp_m1");
     4807        return false;
     4808    }
     4809    psF32 teltemp_m1cell = psMetadataLookupF32(&status, md, "teltemp_m1cell");
     4810    if (!status) {
     4811        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item teltemp_m1cell");
     4812        return false;
     4813    }
     4814    psF32 teltemp_m2 = psMetadataLookupF32(&status, md, "teltemp_m2");
     4815    if (!status) {
     4816        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item teltemp_m2");
     4817        return false;
     4818    }
     4819    psF32 teltemp_spider = psMetadataLookupF32(&status, md, "teltemp_spider");
     4820    if (!status) {
     4821        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item teltemp_spider");
     4822        return false;
     4823    }
     4824    psF32 teltemp_truss = psMetadataLookupF32(&status, md, "teltemp_truss");
     4825    if (!status) {
     4826        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item teltemp_truss");
     4827        return false;
     4828    }
     4829    psF32 teltemp_extra = psMetadataLookupF32(&status, md, "teltemp_extra");
     4830    if (!status) {
     4831        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item teltemp_extra");
     4832        return false;
     4833    }
    46324834    psF32 pon_time = psMetadataLookupF32(&status, md, "pon_time");
    46334835    if (!status) {
     
    46764878    }
    46774879
    4678     return rawExpRowAlloc(exp_id, exp_name, camera, telescope, dateobs, exp_tag, exp_type, filelevel, workdir, reduction, filter, airmass, ra, decl, exp_time, sat_pixel_frac, bg, bg_stdev, bg_mean_stdev, alt, az, ccd_temp, posang, M1_x, M1_y, M1_z, M1_tip, M1_tilt, M2_x, M2_y, M2_z, M2_tip, M2_tilt, env_temperature, env_humidity, env_wind_speed, env_wind_dir, pon_time, user_1, user_2, user_3, user_4, user_5, object, solang, fault);
     4880    return rawExpRowAlloc(exp_id, exp_name, camera, telescope, dateobs, exp_tag, exp_type, filelevel, workdir, reduction, filter, comment, airmass, ra, decl, exp_time, sat_pixel_frac, bg, bg_stdev, bg_mean_stdev, alt, az, ccd_temp, posang, m1_x, m1_y, m1_z, m1_tip, m1_tilt, m2_x, m2_y, m2_z, m2_tip, m2_tilt, env_temperature, env_humidity, env_wind_speed, env_wind_dir, teltemp_m1, teltemp_m1cell, teltemp_m2, teltemp_spider, teltemp_truss, teltemp_extra, pon_time, user_1, user_2, user_3, user_4, user_5, object, solang, fault);
    46794881}
    46804882psArray *rawExpSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit)
     
    46954897    for (i = 0; i < rowSet->n; i++) {
    46964898        rawExpRow *object = rawExpObjectFromMetadata(rowSet->data[i]);
     4899        if (!object) {
     4900            psFree(object);
     4901            psFree(returnSet);
     4902            psError(PS_ERR_UNKNOWN, false, "database error");
     4903            return NULL;
     4904        }
    46974905        psArrayAdd(returnSet, 0, object);
    46984906        psFree(object);
     
    47884996static void rawImfileRowFree(rawImfileRow *object);
    47894997
    4790 rawImfileRow *rawImfileRowAlloc(psS64 exp_id, const char *exp_name, const char *camera, const char *telescope, psTime* dateobs, const char *tmp_class_id, const char *class_id, const char *uri, const char *exp_type, const char *filelevel, const char *filter, psF32 airmass, psF64 ra, psF64 decl, psF32 exp_time, psF32 sat_pixel_frac, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 alt, psF64 az, psF32 ccd_temp, psF64 posang, psF32 M1_x, psF32 M1_y, psF32 M1_z, psF32 M1_tip, psF32 M1_tilt, psF32 M2_x, psF32 M2_y, psF32 M2_z, psF32 M2_tip, psF32 M2_tilt, psF32 env_temperature, psF32 env_humidity, psF32 env_wind_speed, psF32 env_wind_dir, psF32 pon_time, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *object, psS16 fault)
     4998rawImfileRow *rawImfileRowAlloc(psS64 exp_id, const char *exp_name, const char *camera, const char *telescope, psTime* dateobs, const char *tmp_class_id, const char *class_id, const char *uri, const char *exp_type, const char *filelevel, const char *filter, const char *comment, psF32 airmass, psF64 ra, psF64 decl, psF32 exp_time, psF32 sat_pixel_frac, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 alt, psF64 az, psF32 ccd_temp, psF64 posang, psF32 m1_x, psF32 m1_y, psF32 m1_z, psF32 m1_tip, psF32 m1_tilt, psF32 m2_x, psF32 m2_y, psF32 m2_z, psF32 m2_tip, psF32 m2_tilt, psF32 env_temperature, psF32 env_humidity, psF32 env_wind_speed, psF32 env_wind_dir, psF32 teltemp_m1, psF32 teltemp_m1cell, psF32 teltemp_m2, psF32 teltemp_spider, psF32 teltemp_truss, psF32 teltemp_extra, psF32 pon_time, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *object, psS16 fault)
    47914999{
    47925000    rawImfileRow    *_object;
     
    48065014    _object->filelevel = psStringCopy(filelevel);
    48075015    _object->filter = psStringCopy(filter);
     5016    _object->comment = psStringCopy(comment);
    48085017    _object->airmass = airmass;
    48095018    _object->ra = ra;
     
    48185027    _object->ccd_temp = ccd_temp;
    48195028    _object->posang = posang;
    4820     _object->M1_x = M1_x;
    4821     _object->M1_y = M1_y;
    4822     _object->M1_z = M1_z;
    4823     _object->M1_tip = M1_tip;
    4824     _object->M1_tilt = M1_tilt;
    4825     _object->M2_x = M2_x;
    4826     _object->M2_y = M2_y;
    4827     _object->M2_z = M2_z;
    4828     _object->M2_tip = M2_tip;
    4829     _object->M2_tilt = M2_tilt;
     5029    _object->m1_x = m1_x;
     5030    _object->m1_y = m1_y;
     5031    _object->m1_z = m1_z;
     5032    _object->m1_tip = m1_tip;
     5033    _object->m1_tilt = m1_tilt;
     5034    _object->m2_x = m2_x;
     5035    _object->m2_y = m2_y;
     5036    _object->m2_z = m2_z;
     5037    _object->m2_tip = m2_tip;
     5038    _object->m2_tilt = m2_tilt;
    48305039    _object->env_temperature = env_temperature;
    48315040    _object->env_humidity = env_humidity;
    48325041    _object->env_wind_speed = env_wind_speed;
    48335042    _object->env_wind_dir = env_wind_dir;
     5043    _object->teltemp_m1 = teltemp_m1;
     5044    _object->teltemp_m1cell = teltemp_m1cell;
     5045    _object->teltemp_m2 = teltemp_m2;
     5046    _object->teltemp_spider = teltemp_spider;
     5047    _object->teltemp_truss = teltemp_truss;
     5048    _object->teltemp_extra = teltemp_extra;
    48345049    _object->pon_time = pon_time;
    48355050    _object->user_1 = user_1;
     
    48565071    psFree(object->filelevel);
    48575072    psFree(object->filter);
     5073    psFree(object->comment);
    48585074    psFree(object->object);
    48595075}
     
    49175133        return false;
    49185134    }
     5135    if (!psMetadataAdd(md, PS_LIST_TAIL, "comment", PS_DATA_STRING, NULL, "80")) {
     5136        psError(PS_ERR_UNKNOWN, false, "failed to add item comment");
     5137        psFree(md);
     5138        return false;
     5139    }
    49195140    if (!psMetadataAdd(md, PS_LIST_TAIL, "airmass", PS_DATA_F32, NULL, 0.0)) {
    49205141        psError(PS_ERR_UNKNOWN, false, "failed to add item airmass");
     
    49775198        return false;
    49785199    }
    4979     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_x", PS_DATA_F32, NULL, 0.0)) {
    4980         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_x");
    4981         psFree(md);
    4982         return false;
    4983     }
    4984     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_y", PS_DATA_F32, NULL, 0.0)) {
    4985         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_y");
    4986         psFree(md);
    4987         return false;
    4988     }
    4989     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_z", PS_DATA_F32, NULL, 0.0)) {
    4990         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_z");
    4991         psFree(md);
    4992         return false;
    4993     }
    4994     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_tip", PS_DATA_F32, NULL, 0.0)) {
    4995         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_tip");
    4996         psFree(md);
    4997         return false;
    4998     }
    4999     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_tilt", PS_DATA_F32, NULL, 0.0)) {
    5000         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_tilt");
    5001         psFree(md);
    5002         return false;
    5003     }
    5004     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_x", PS_DATA_F32, NULL, 0.0)) {
    5005         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_x");
    5006         psFree(md);
    5007         return false;
    5008     }
    5009     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_y", PS_DATA_F32, NULL, 0.0)) {
    5010         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_y");
    5011         psFree(md);
    5012         return false;
    5013     }
    5014     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_z", PS_DATA_F32, NULL, 0.0)) {
    5015         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_z");
    5016         psFree(md);
    5017         return false;
    5018     }
    5019     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_tip", PS_DATA_F32, NULL, 0.0)) {
    5020         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_tip");
    5021         psFree(md);
    5022         return false;
    5023     }
    5024     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_tilt", PS_DATA_F32, NULL, 0.0)) {
    5025         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_tilt");
     5200    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_x", PS_DATA_F32, NULL, 0.0)) {
     5201        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_x");
     5202        psFree(md);
     5203        return false;
     5204    }
     5205    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_y", PS_DATA_F32, NULL, 0.0)) {
     5206        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_y");
     5207        psFree(md);
     5208        return false;
     5209    }
     5210    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_z", PS_DATA_F32, NULL, 0.0)) {
     5211        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_z");
     5212        psFree(md);
     5213        return false;
     5214    }
     5215    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_tip", PS_DATA_F32, NULL, 0.0)) {
     5216        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_tip");
     5217        psFree(md);
     5218        return false;
     5219    }
     5220    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_tilt", PS_DATA_F32, NULL, 0.0)) {
     5221        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_tilt");
     5222        psFree(md);
     5223        return false;
     5224    }
     5225    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_x", PS_DATA_F32, NULL, 0.0)) {
     5226        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_x");
     5227        psFree(md);
     5228        return false;
     5229    }
     5230    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_y", PS_DATA_F32, NULL, 0.0)) {
     5231        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_y");
     5232        psFree(md);
     5233        return false;
     5234    }
     5235    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_z", PS_DATA_F32, NULL, 0.0)) {
     5236        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_z");
     5237        psFree(md);
     5238        return false;
     5239    }
     5240    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_tip", PS_DATA_F32, NULL, 0.0)) {
     5241        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_tip");
     5242        psFree(md);
     5243        return false;
     5244    }
     5245    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_tilt", PS_DATA_F32, NULL, 0.0)) {
     5246        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_tilt");
    50265247        psFree(md);
    50275248        return false;
     
    50475268        return false;
    50485269    }
     5270    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_m1", PS_DATA_F32, NULL, 0.0)) {
     5271        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_m1");
     5272        psFree(md);
     5273        return false;
     5274    }
     5275    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_m1cell", PS_DATA_F32, NULL, 0.0)) {
     5276        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_m1cell");
     5277        psFree(md);
     5278        return false;
     5279    }
     5280    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_m2", PS_DATA_F32, NULL, 0.0)) {
     5281        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_m2");
     5282        psFree(md);
     5283        return false;
     5284    }
     5285    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_spider", PS_DATA_F32, NULL, 0.0)) {
     5286        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_spider");
     5287        psFree(md);
     5288        return false;
     5289    }
     5290    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_truss", PS_DATA_F32, NULL, 0.0)) {
     5291        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_truss");
     5292        psFree(md);
     5293        return false;
     5294    }
     5295    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_extra", PS_DATA_F32, NULL, 0.0)) {
     5296        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_extra");
     5297        psFree(md);
     5298        return false;
     5299    }
    50495300    if (!psMetadataAdd(md, PS_LIST_TAIL, "pon_time", PS_DATA_F32, NULL, 0.0)) {
    50505301        psError(PS_ERR_UNKNOWN, false, "failed to add item pon_time");
     
    51005351}
    51015352
    5102 bool rawImfileInsert(psDB * dbh, psS64 exp_id, const char *exp_name, const char *camera, const char *telescope, psTime* dateobs, const char *tmp_class_id, const char *class_id, const char *uri, const char *exp_type, const char *filelevel, const char *filter, psF32 airmass, psF64 ra, psF64 decl, psF32 exp_time, psF32 sat_pixel_frac, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 alt, psF64 az, psF32 ccd_temp, psF64 posang, psF32 M1_x, psF32 M1_y, psF32 M1_z, psF32 M1_tip, psF32 M1_tilt, psF32 M2_x, psF32 M2_y, psF32 M2_z, psF32 M2_tip, psF32 M2_tilt, psF32 env_temperature, psF32 env_humidity, psF32 env_wind_speed, psF32 env_wind_dir, psF32 pon_time, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *object, psS16 fault)
     5353bool rawImfileInsert(psDB * dbh, psS64 exp_id, const char *exp_name, const char *camera, const char *telescope, psTime* dateobs, const char *tmp_class_id, const char *class_id, const char *uri, const char *exp_type, const char *filelevel, const char *filter, const char *comment, psF32 airmass, psF64 ra, psF64 decl, psF32 exp_time, psF32 sat_pixel_frac, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 alt, psF64 az, psF32 ccd_temp, psF64 posang, psF32 m1_x, psF32 m1_y, psF32 m1_z, psF32 m1_tip, psF32 m1_tilt, psF32 m2_x, psF32 m2_y, psF32 m2_z, psF32 m2_tip, psF32 m2_tilt, psF32 env_temperature, psF32 env_humidity, psF32 env_wind_speed, psF32 env_wind_dir, psF32 teltemp_m1, psF32 teltemp_m1cell, psF32 teltemp_m2, psF32 teltemp_spider, psF32 teltemp_truss, psF32 teltemp_extra, psF32 pon_time, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *object, psS16 fault)
    51035354{
    51045355    psMetadata *md = psMetadataAlloc();
     
    51585409        return false;
    51595410    }
     5411    if (!psMetadataAdd(md, PS_LIST_TAIL, "comment", PS_DATA_STRING, NULL, comment)) {
     5412        psError(PS_ERR_UNKNOWN, false, "failed to add item comment");
     5413        psFree(md);
     5414        return false;
     5415    }
    51605416    if (!psMetadataAdd(md, PS_LIST_TAIL, "airmass", PS_DATA_F32, NULL, airmass)) {
    51615417        psError(PS_ERR_UNKNOWN, false, "failed to add item airmass");
     
    52185474        return false;
    52195475    }
    5220     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_x", PS_DATA_F32, NULL, M1_x)) {
    5221         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_x");
    5222         psFree(md);
    5223         return false;
    5224     }
    5225     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_y", PS_DATA_F32, NULL, M1_y)) {
    5226         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_y");
    5227         psFree(md);
    5228         return false;
    5229     }
    5230     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_z", PS_DATA_F32, NULL, M1_z)) {
    5231         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_z");
    5232         psFree(md);
    5233         return false;
    5234     }
    5235     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_tip", PS_DATA_F32, NULL, M1_tip)) {
    5236         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_tip");
    5237         psFree(md);
    5238         return false;
    5239     }
    5240     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_tilt", PS_DATA_F32, NULL, M1_tilt)) {
    5241         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_tilt");
    5242         psFree(md);
    5243         return false;
    5244     }
    5245     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_x", PS_DATA_F32, NULL, M2_x)) {
    5246         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_x");
    5247         psFree(md);
    5248         return false;
    5249     }
    5250     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_y", PS_DATA_F32, NULL, M2_y)) {
    5251         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_y");
    5252         psFree(md);
    5253         return false;
    5254     }
    5255     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_z", PS_DATA_F32, NULL, M2_z)) {
    5256         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_z");
    5257         psFree(md);
    5258         return false;
    5259     }
    5260     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_tip", PS_DATA_F32, NULL, M2_tip)) {
    5261         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_tip");
    5262         psFree(md);
    5263         return false;
    5264     }
    5265     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_tilt", PS_DATA_F32, NULL, M2_tilt)) {
    5266         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_tilt");
     5476    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_x", PS_DATA_F32, NULL, m1_x)) {
     5477        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_x");
     5478        psFree(md);
     5479        return false;
     5480    }
     5481    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_y", PS_DATA_F32, NULL, m1_y)) {
     5482        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_y");
     5483        psFree(md);
     5484        return false;
     5485    }
     5486    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_z", PS_DATA_F32, NULL, m1_z)) {
     5487        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_z");
     5488        psFree(md);
     5489        return false;
     5490    }
     5491    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_tip", PS_DATA_F32, NULL, m1_tip)) {
     5492        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_tip");
     5493        psFree(md);
     5494        return false;
     5495    }
     5496    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_tilt", PS_DATA_F32, NULL, m1_tilt)) {
     5497        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_tilt");
     5498        psFree(md);
     5499        return false;
     5500    }
     5501    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_x", PS_DATA_F32, NULL, m2_x)) {
     5502        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_x");
     5503        psFree(md);
     5504        return false;
     5505    }
     5506    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_y", PS_DATA_F32, NULL, m2_y)) {
     5507        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_y");
     5508        psFree(md);
     5509        return false;
     5510    }
     5511    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_z", PS_DATA_F32, NULL, m2_z)) {
     5512        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_z");
     5513        psFree(md);
     5514        return false;
     5515    }
     5516    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_tip", PS_DATA_F32, NULL, m2_tip)) {
     5517        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_tip");
     5518        psFree(md);
     5519        return false;
     5520    }
     5521    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_tilt", PS_DATA_F32, NULL, m2_tilt)) {
     5522        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_tilt");
    52675523        psFree(md);
    52685524        return false;
     
    52855541    if (!psMetadataAdd(md, PS_LIST_TAIL, "env_wind_dir", PS_DATA_F32, NULL, env_wind_dir)) {
    52865542        psError(PS_ERR_UNKNOWN, false, "failed to add item env_wind_dir");
     5543        psFree(md);
     5544        return false;
     5545    }
     5546    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_m1", PS_DATA_F32, NULL, teltemp_m1)) {
     5547        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_m1");
     5548        psFree(md);
     5549        return false;
     5550    }
     5551    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_m1cell", PS_DATA_F32, NULL, teltemp_m1cell)) {
     5552        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_m1cell");
     5553        psFree(md);
     5554        return false;
     5555    }
     5556    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_m2", PS_DATA_F32, NULL, teltemp_m2)) {
     5557        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_m2");
     5558        psFree(md);
     5559        return false;
     5560    }
     5561    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_spider", PS_DATA_F32, NULL, teltemp_spider)) {
     5562        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_spider");
     5563        psFree(md);
     5564        return false;
     5565    }
     5566    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_truss", PS_DATA_F32, NULL, teltemp_truss)) {
     5567        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_truss");
     5568        psFree(md);
     5569        return false;
     5570    }
     5571    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_extra", PS_DATA_F32, NULL, teltemp_extra)) {
     5572        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_extra");
    52875573        psFree(md);
    52885574        return false;
     
    53515637bool rawImfileInsertObject(psDB *dbh, rawImfileRow *object)
    53525638{
    5353     return rawImfileInsert(dbh, object->exp_id, object->exp_name, object->camera, object->telescope, object->dateobs, object->tmp_class_id, object->class_id, object->uri, object->exp_type, object->filelevel, object->filter, object->airmass, object->ra, object->decl, object->exp_time, object->sat_pixel_frac, object->bg, object->bg_stdev, object->bg_mean_stdev, object->alt, object->az, object->ccd_temp, object->posang, object->M1_x, object->M1_y, object->M1_z, object->M1_tip, object->M1_tilt, object->M2_x, object->M2_y, object->M2_z, object->M2_tip, object->M2_tilt, object->env_temperature, object->env_humidity, object->env_wind_speed, object->env_wind_dir, object->pon_time, object->user_1, object->user_2, object->user_3, object->user_4, object->user_5, object->object, object->fault);
     5639    return rawImfileInsert(dbh, object->exp_id, object->exp_name, object->camera, object->telescope, object->dateobs, object->tmp_class_id, object->class_id, object->uri, object->exp_type, object->filelevel, object->filter, object->comment, object->airmass, object->ra, object->decl, object->exp_time, object->sat_pixel_frac, object->bg, object->bg_stdev, object->bg_mean_stdev, object->alt, object->az, object->ccd_temp, object->posang, object->m1_x, object->m1_y, object->m1_z, object->m1_tip, object->m1_tilt, object->m2_x, object->m2_y, object->m2_z, object->m2_tip, object->m2_tilt, object->env_temperature, object->env_humidity, object->env_wind_speed, object->env_wind_dir, object->teltemp_m1, object->teltemp_m1cell, object->teltemp_m2, object->teltemp_spider, object->teltemp_truss, object->teltemp_extra, object->pon_time, object->user_1, object->user_2, object->user_3, object->user_4, object->user_5, object->object, object->fault);
    53545640}
    53555641
     
    54795765        return false;
    54805766    }
     5767    if (!psMetadataAdd(md, PS_LIST_TAIL, "comment", PS_DATA_STRING, NULL, object->comment)) {
     5768        psError(PS_ERR_UNKNOWN, false, "failed to add item comment");
     5769        psFree(md);
     5770        return false;
     5771    }
    54815772    if (!psMetadataAdd(md, PS_LIST_TAIL, "airmass", PS_DATA_F32, NULL, object->airmass)) {
    54825773        psError(PS_ERR_UNKNOWN, false, "failed to add item airmass");
     
    55395830        return false;
    55405831    }
    5541     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_x", PS_DATA_F32, NULL, object->M1_x)) {
    5542         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_x");
    5543         psFree(md);
    5544         return false;
    5545     }
    5546     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_y", PS_DATA_F32, NULL, object->M1_y)) {
    5547         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_y");
    5548         psFree(md);
    5549         return false;
    5550     }
    5551     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_z", PS_DATA_F32, NULL, object->M1_z)) {
    5552         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_z");
    5553         psFree(md);
    5554         return false;
    5555     }
    5556     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_tip", PS_DATA_F32, NULL, object->M1_tip)) {
    5557         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_tip");
    5558         psFree(md);
    5559         return false;
    5560     }
    5561     if (!psMetadataAdd(md, PS_LIST_TAIL, "M1_tilt", PS_DATA_F32, NULL, object->M1_tilt)) {
    5562         psError(PS_ERR_UNKNOWN, false, "failed to add item M1_tilt");
    5563         psFree(md);
    5564         return false;
    5565     }
    5566     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_x", PS_DATA_F32, NULL, object->M2_x)) {
    5567         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_x");
    5568         psFree(md);
    5569         return false;
    5570     }
    5571     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_y", PS_DATA_F32, NULL, object->M2_y)) {
    5572         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_y");
    5573         psFree(md);
    5574         return false;
    5575     }
    5576     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_z", PS_DATA_F32, NULL, object->M2_z)) {
    5577         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_z");
    5578         psFree(md);
    5579         return false;
    5580     }
    5581     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_tip", PS_DATA_F32, NULL, object->M2_tip)) {
    5582         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_tip");
    5583         psFree(md);
    5584         return false;
    5585     }
    5586     if (!psMetadataAdd(md, PS_LIST_TAIL, "M2_tilt", PS_DATA_F32, NULL, object->M2_tilt)) {
    5587         psError(PS_ERR_UNKNOWN, false, "failed to add item M2_tilt");
     5832    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_x", PS_DATA_F32, NULL, object->m1_x)) {
     5833        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_x");
     5834        psFree(md);
     5835        return false;
     5836    }
     5837    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_y", PS_DATA_F32, NULL, object->m1_y)) {
     5838        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_y");
     5839        psFree(md);
     5840        return false;
     5841    }
     5842    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_z", PS_DATA_F32, NULL, object->m1_z)) {
     5843        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_z");
     5844        psFree(md);
     5845        return false;
     5846    }
     5847    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_tip", PS_DATA_F32, NULL, object->m1_tip)) {
     5848        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_tip");
     5849        psFree(md);
     5850        return false;
     5851    }
     5852    if (!psMetadataAdd(md, PS_LIST_TAIL, "m1_tilt", PS_DATA_F32, NULL, object->m1_tilt)) {
     5853        psError(PS_ERR_UNKNOWN, false, "failed to add item m1_tilt");
     5854        psFree(md);
     5855        return false;
     5856    }
     5857    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_x", PS_DATA_F32, NULL, object->m2_x)) {
     5858        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_x");
     5859        psFree(md);
     5860        return false;
     5861    }
     5862    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_y", PS_DATA_F32, NULL, object->m2_y)) {
     5863        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_y");
     5864        psFree(md);
     5865        return false;
     5866    }
     5867    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_z", PS_DATA_F32, NULL, object->m2_z)) {
     5868        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_z");
     5869        psFree(md);
     5870        return false;
     5871    }
     5872    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_tip", PS_DATA_F32, NULL, object->m2_tip)) {
     5873        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_tip");
     5874        psFree(md);
     5875        return false;
     5876    }
     5877    if (!psMetadataAdd(md, PS_LIST_TAIL, "m2_tilt", PS_DATA_F32, NULL, object->m2_tilt)) {
     5878        psError(PS_ERR_UNKNOWN, false, "failed to add item m2_tilt");
    55885879        psFree(md);
    55895880        return false;
     
    56095900        return false;
    56105901    }
     5902    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_m1", PS_DATA_F32, NULL, object->teltemp_m1)) {
     5903        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_m1");
     5904        psFree(md);
     5905        return false;
     5906    }
     5907    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_m1cell", PS_DATA_F32, NULL, object->teltemp_m1cell)) {
     5908        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_m1cell");
     5909        psFree(md);
     5910        return false;
     5911    }
     5912    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_m2", PS_DATA_F32, NULL, object->teltemp_m2)) {
     5913        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_m2");
     5914        psFree(md);
     5915        return false;
     5916    }
     5917    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_spider", PS_DATA_F32, NULL, object->teltemp_spider)) {
     5918        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_spider");
     5919        psFree(md);
     5920        return false;
     5921    }
     5922    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_truss", PS_DATA_F32, NULL, object->teltemp_truss)) {
     5923        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_truss");
     5924        psFree(md);
     5925        return false;
     5926    }
     5927    if (!psMetadataAdd(md, PS_LIST_TAIL, "teltemp_extra", PS_DATA_F32, NULL, object->teltemp_extra)) {
     5928        psError(PS_ERR_UNKNOWN, false, "failed to add item teltemp_extra");
     5929        psFree(md);
     5930        return false;
     5931    }
    56115932    if (!psMetadataAdd(md, PS_LIST_TAIL, "pon_time", PS_DATA_F32, NULL, object->pon_time)) {
    56125933        psError(PS_ERR_UNKNOWN, false, "failed to add item pon_time");
     
    57136034        return false;
    57146035    }
     6036    char* comment = psMetadataLookupPtr(&status, md, "comment");
     6037    if (!status) {
     6038        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item comment");
     6039        return false;
     6040    }
    57156041    psF32 airmass = psMetadataLookupF32(&status, md, "airmass");
    57166042    if (!status) {
     
    57736099        return false;
    57746100    }
    5775     psF32 M1_x = psMetadataLookupF32(&status, md, "M1_x");
    5776     if (!status) {
    5777         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M1_x");
    5778         return false;
    5779     }
    5780     psF32 M1_y = psMetadataLookupF32(&status, md, "M1_y");
    5781     if (!status) {
    5782         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M1_y");
    5783         return false;
    5784     }
    5785     psF32 M1_z = psMetadataLookupF32(&status, md, "M1_z");
    5786     if (!status) {
    5787         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M1_z");
    5788         return false;
    5789     }
    5790     psF32 M1_tip = psMetadataLookupF32(&status, md, "M1_tip");
    5791     if (!status) {
    5792         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M1_tip");
    5793         return false;
    5794     }
    5795     psF32 M1_tilt = psMetadataLookupF32(&status, md, "M1_tilt");
    5796     if (!status) {
    5797         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M1_tilt");
    5798         return false;
    5799     }
    5800     psF32 M2_x = psMetadataLookupF32(&status, md, "M2_x");
    5801     if (!status) {
    5802         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M2_x");
    5803         return false;
    5804     }
    5805     psF32 M2_y = psMetadataLookupF32(&status, md, "M2_y");
    5806     if (!status) {
    5807         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M2_y");
    5808         return false;
    5809     }
    5810     psF32 M2_z = psMetadataLookupF32(&status, md, "M2_z");
    5811     if (!status) {
    5812         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M2_z");
    5813         return false;
    5814     }
    5815     psF32 M2_tip = psMetadataLookupF32(&status, md, "M2_tip");
    5816     if (!status) {
    5817         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M2_tip");
    5818         return false;
    5819     }
    5820     psF32 M2_tilt = psMetadataLookupF32(&status, md, "M2_tilt");
    5821     if (!status) {
    5822         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item M2_tilt");
     6101    psF32 m1_x = psMetadataLookupF32(&status, md, "m1_x");
     6102    if (!status) {
     6103        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item m1_x");
     6104        return false;
     6105    }
     6106    psF32 m1_y = psMetadataLookupF32(&status, md, "m1_y");
     6107    if (!status) {
     6108        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item m1_y");
     6109        return false;
     6110    }
     6111    psF32 m1_z = psMetadataLookupF32(&status, md, "m1_z");
     6112    if (!status) {
     6113        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item m1_z");
     6114        return false;
     6115    }
     6116    psF32 m1_tip = psMetadataLookupF32(&status, md, "m1_tip");
     6117    if (!status) {
     6118        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item m1_tip");
     6119        return false;
     6120    }
     6121    psF32 m1_tilt = psMetadataLookupF32(&status, md, "m1_tilt");
     6122    if (!status) {
     6123        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item m1_tilt");
     6124        return false;
     6125    }
     6126    psF32 m2_x = psMetadataLookupF32(&status, md, "m2_x");
     6127    if (!status) {
     6128        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item m2_x");
     6129        return false;
     6130    }
     6131    psF32 m2_y = psMetadataLookupF32(&status, md, "m2_y");
     6132    if (!status) {
     6133        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item m2_y");
     6134        return false;
     6135    }
     6136    psF32 m2_z = psMetadataLookupF32(&status, md, "m2_z");
     6137    if (!status) {
     6138        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item m2_z");
     6139        return false;
     6140    }
     6141    psF32 m2_tip = psMetadataLookupF32(&status, md, "m2_tip");
     6142    if (!status) {
     6143        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item m2_tip");
     6144        return false;
     6145    }
     6146    psF32 m2_tilt = psMetadataLookupF32(&status, md, "m2_tilt");
     6147    if (!status) {
     6148        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item m2_tilt");
    58236149        return false;
    58246150    }
     
    58436169        return false;
    58446170    }
     6171    psF32 teltemp_m1 = psMetadataLookupF32(&status, md, "teltemp_m1");
     6172    if (!status) {
     6173        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item teltemp_m1");
     6174        return false;
     6175    }
     6176    psF32 teltemp_m1cell = psMetadataLookupF32(&status, md, "teltemp_m1cell");
     6177    if (!status) {
     6178        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item teltemp_m1cell");
     6179        return false;
     6180    }
     6181    psF32 teltemp_m2 = psMetadataLookupF32(&status, md, "teltemp_m2");
     6182    if (!status) {
     6183        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item teltemp_m2");
     6184        return false;
     6185    }
     6186    psF32 teltemp_spider = psMetadataLookupF32(&status, md, "teltemp_spider");
     6187    if (!status) {
     6188        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item teltemp_spider");
     6189        return false;
     6190    }
     6191    psF32 teltemp_truss = psMetadataLookupF32(&status, md, "teltemp_truss");
     6192    if (!status) {
     6193        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item teltemp_truss");
     6194        return false;
     6195    }
     6196    psF32 teltemp_extra = psMetadataLookupF32(&status, md, "teltemp_extra");
     6197    if (!status) {
     6198        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item teltemp_extra");
     6199        return false;
     6200    }
    58456201    psF32 pon_time = psMetadataLookupF32(&status, md, "pon_time");
    58466202    if (!status) {
     
    58846240    }
    58856241
    5886     return rawImfileRowAlloc(exp_id, exp_name, camera, telescope, dateobs, tmp_class_id, class_id, uri, exp_type, filelevel, filter, airmass, ra, decl, exp_time, sat_pixel_frac, bg, bg_stdev, bg_mean_stdev, alt, az, ccd_temp, posang, M1_x, M1_y, M1_z, M1_tip, M1_tilt, M2_x, M2_y, M2_z, M2_tip, M2_tilt, env_temperature, env_humidity, env_wind_speed, env_wind_dir, pon_time, user_1, user_2, user_3, user_4, user_5, object, fault);
     6242    return rawImfileRowAlloc(exp_id, exp_name, camera, telescope, dateobs, tmp_class_id, class_id, uri, exp_type, filelevel, filter, comment, airmass, ra, decl, exp_time, sat_pixel_frac, bg, bg_stdev, bg_mean_stdev, alt, az, ccd_temp, posang, m1_x, m1_y, m1_z, m1_tip, m1_tilt, m2_x, m2_y, m2_z, m2_tip, m2_tilt, env_temperature, env_humidity, env_wind_speed, env_wind_dir, teltemp_m1, teltemp_m1cell, teltemp_m2, teltemp_spider, teltemp_truss, teltemp_extra, pon_time, user_1, user_2, user_3, user_4, user_5, object, fault);
    58876243}
    58886244psArray *rawImfileSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit)
     
    59036259    for (i = 0; i < rowSet->n; i++) {
    59046260        rawImfileRow *object = rawImfileObjectFromMetadata(rowSet->data[i]);
     6261        if (!object) {
     6262            psFree(object);
     6263            psFree(returnSet);
     6264            psError(PS_ERR_UNKNOWN, false, "database error");
     6265            return NULL;
     6266        }
    59056267        psArrayAdd(returnSet, 0, object);
    59066268        psFree(object);
     
    62196581    for (i = 0; i < rowSet->n; i++) {
    62206582        guidePendingExpRow *object = guidePendingExpObjectFromMetadata(rowSet->data[i]);
     6583        if (!object) {
     6584            psFree(object);
     6585            psFree(returnSet);
     6586            psError(PS_ERR_UNKNOWN, false, "database error");
     6587            return NULL;
     6588        }
    62216589        psArrayAdd(returnSet, 0, object);
    62226590        psFree(object);
     
    66677035    for (i = 0; i < rowSet->n; i++) {
    66687036        chipRunRow *object = chipRunObjectFromMetadata(rowSet->data[i]);
     7037        if (!object) {
     7038            psFree(object);
     7039            psFree(returnSet);
     7040            psError(PS_ERR_UNKNOWN, false, "database error");
     7041            return NULL;
     7042        }
    66697043        psArrayAdd(returnSet, 0, object);
    66707044        psFree(object);
     
    74267800    for (i = 0; i < rowSet->n; i++) {
    74277801        chipProcessedImfileRow *object = chipProcessedImfileObjectFromMetadata(rowSet->data[i]);
     7802        if (!object) {
     7803            psFree(object);
     7804            psFree(returnSet);
     7805            psError(PS_ERR_UNKNOWN, false, "database error");
     7806            return NULL;
     7807        }
    74287808        psArrayAdd(returnSet, 0, object);
    74297809        psFree(object);
     
    77008080    for (i = 0; i < rowSet->n; i++) {
    77018081        chipMaskRow *object = chipMaskObjectFromMetadata(rowSet->data[i]);
     8082        if (!object) {
     8083            psFree(object);
     8084            psFree(returnSet);
     8085            psError(PS_ERR_UNKNOWN, false, "database error");
     8086            return NULL;
     8087        }
    77028088        psArrayAdd(returnSet, 0, object);
    77038089        psFree(object);
     
    81488534    for (i = 0; i < rowSet->n; i++) {
    81498535        camRunRow *object = camRunObjectFromMetadata(rowSet->data[i]);
     8536        if (!object) {
     8537            psFree(object);
     8538            psFree(returnSet);
     8539            psError(PS_ERR_UNKNOWN, false, "database error");
     8540            return NULL;
     8541        }
    81508542        psArrayAdd(returnSet, 0, object);
    81518543        psFree(object);
     
    87809172    for (i = 0; i < rowSet->n; i++) {
    87819173        camProcessedExpRow *object = camProcessedExpObjectFromMetadata(rowSet->data[i]);
     9174        if (!object) {
     9175            psFree(object);
     9176            psFree(returnSet);
     9177            psError(PS_ERR_UNKNOWN, false, "database error");
     9178            return NULL;
     9179        }
    87829180        psArrayAdd(returnSet, 0, object);
    87839181        psFree(object);
     
    90549452    for (i = 0; i < rowSet->n; i++) {
    90559453        camMaskRow *object = camMaskObjectFromMetadata(rowSet->data[i]);
     9454        if (!object) {
     9455            psFree(object);
     9456            psFree(returnSet);
     9457            psError(PS_ERR_UNKNOWN, false, "database error");
     9458            return NULL;
     9459        }
    90569460        psArrayAdd(returnSet, 0, object);
    90579461        psFree(object);
     
    94379841    for (i = 0; i < rowSet->n; i++) {
    94389842        warpRunRow *object = warpRunObjectFromMetadata(rowSet->data[i]);
     9843        if (!object) {
     9844            psFree(object);
     9845            psFree(returnSet);
     9846            psError(PS_ERR_UNKNOWN, false, "database error");
     9847            return NULL;
     9848        }
    94399849        psArrayAdd(returnSet, 0, object);
    94409850        psFree(object);
     
    975210162    for (i = 0; i < rowSet->n; i++) {
    975310163        warpInputExpRow *object = warpInputExpObjectFromMetadata(rowSet->data[i]);
     10164        if (!object) {
     10165            psFree(object);
     10166            psFree(returnSet);
     10167            psError(PS_ERR_UNKNOWN, false, "database error");
     10168            return NULL;
     10169        }
    975410170        psArrayAdd(returnSet, 0, object);
    975510171        psFree(object);
     
    1013310549    for (i = 0; i < rowSet->n; i++) {
    1013410550        warpSkyCellMapRow *object = warpSkyCellMapObjectFromMetadata(rowSet->data[i]);
     10551        if (!object) {
     10552            psFree(object);
     10553            psFree(returnSet);
     10554            psError(PS_ERR_UNKNOWN, false, "database error");
     10555            return NULL;
     10556        }
    1013510557        psArrayAdd(returnSet, 0, object);
    1013610558        psFree(object);
     
    1059911021    for (i = 0; i < rowSet->n; i++) {
    1060011022        warpSkyfileRow *object = warpSkyfileObjectFromMetadata(rowSet->data[i]);
     11023        if (!object) {
     11024            psFree(object);
     11025            psFree(returnSet);
     11026            psError(PS_ERR_UNKNOWN, false, "database error");
     11027            return NULL;
     11028        }
    1060111029        psArrayAdd(returnSet, 0, object);
    1060211030        psFree(object);
     
    1100411432    for (i = 0; i < rowSet->n; i++) {
    1100511433        diffRunRow *object = diffRunObjectFromMetadata(rowSet->data[i]);
     11434        if (!object) {
     11435            psFree(object);
     11436            psFree(returnSet);
     11437            psError(PS_ERR_UNKNOWN, false, "database error");
     11438            return NULL;
     11439        }
    1100611440        psArrayAdd(returnSet, 0, object);
    1100711441        psFree(object);
     
    1140611840    for (i = 0; i < rowSet->n; i++) {
    1140711841        diffInputSkyfileRow *object = diffInputSkyfileObjectFromMetadata(rowSet->data[i]);
     11842        if (!object) {
     11843            psFree(object);
     11844            psFree(returnSet);
     11845            psError(PS_ERR_UNKNOWN, false, "database error");
     11846            return NULL;
     11847        }
    1140811848        psArrayAdd(returnSet, 0, object);
    1140911849        psFree(object);
     
    1180712247    for (i = 0; i < rowSet->n; i++) {
    1180812248        diffSkyfileRow *object = diffSkyfileObjectFromMetadata(rowSet->data[i]);
     12249        if (!object) {
     12250            psFree(object);
     12251            psFree(returnSet);
     12252            psError(PS_ERR_UNKNOWN, false, "database error");
     12253            return NULL;
     12254        }
    1180912255        psArrayAdd(returnSet, 0, object);
    1181012256        psFree(object);
     
    1221212658    for (i = 0; i < rowSet->n; i++) {
    1221312659        stackRunRow *object = stackRunObjectFromMetadata(rowSet->data[i]);
     12660        if (!object) {
     12661            psFree(object);
     12662            psFree(returnSet);
     12663            psError(PS_ERR_UNKNOWN, false, "database error");
     12664            return NULL;
     12665        }
    1221412666        psArrayAdd(returnSet, 0, object);
    1221512667        psFree(object);
     
    1250612958    for (i = 0; i < rowSet->n; i++) {
    1250712959        stackInputSkyfileRow *object = stackInputSkyfileObjectFromMetadata(rowSet->data[i]);
     12960        if (!object) {
     12961            psFree(object);
     12962            psFree(returnSet);
     12963            psError(PS_ERR_UNKNOWN, false, "database error");
     12964            return NULL;
     12965        }
    1250812966        psArrayAdd(returnSet, 0, object);
    1250912967        psFree(object);
     
    1290713365    for (i = 0; i < rowSet->n; i++) {
    1290813366        stackSumSkyfileRow *object = stackSumSkyfileObjectFromMetadata(rowSet->data[i]);
     13367        if (!object) {
     13368            psFree(object);
     13369            psFree(returnSet);
     13370            psError(PS_ERR_UNKNOWN, false, "database error");
     13371            return NULL;
     13372        }
    1290913373        psArrayAdd(returnSet, 0, object);
    1291013374        psFree(object);
     
    1378414248    for (i = 0; i < rowSet->n; i++) {
    1378514249        detRunRow *object = detRunObjectFromMetadata(rowSet->data[i]);
     14250        if (!object) {
     14251            psFree(object);
     14252            psFree(returnSet);
     14253            psError(PS_ERR_UNKNOWN, false, "database error");
     14254            return NULL;
     14255        }
    1378614256        psArrayAdd(returnSet, 0, object);
    1378714257        psFree(object);
     
    1412014590    for (i = 0; i < rowSet->n; i++) {
    1412114591        detInputExpRow *object = detInputExpObjectFromMetadata(rowSet->data[i]);
     14592        if (!object) {
     14593            psFree(object);
     14594            psFree(returnSet);
     14595            psError(PS_ERR_UNKNOWN, false, "database error");
     14596            return NULL;
     14597        }
    1412214598        psArrayAdd(returnSet, 0, object);
    1412314599        psFree(object);
     
    1475415230    for (i = 0; i < rowSet->n; i++) {
    1475515231        detProcessedImfileRow *object = detProcessedImfileObjectFromMetadata(rowSet->data[i]);
     15232        if (!object) {
     15233            psFree(object);
     15234            psFree(returnSet);
     15235            psError(PS_ERR_UNKNOWN, false, "database error");
     15236            return NULL;
     15237        }
    1475615238        psArrayAdd(returnSet, 0, object);
    1475715239        psFree(object);
     
    1534415826    for (i = 0; i < rowSet->n; i++) {
    1534515827        detProcessedExpRow *object = detProcessedExpObjectFromMetadata(rowSet->data[i]);
     15828        if (!object) {
     15829            psFree(object);
     15830            psFree(returnSet);
     15831            psError(PS_ERR_UNKNOWN, false, "database error");
     15832            return NULL;
     15833        }
    1534615834        psArrayAdd(returnSet, 0, object);
    1534715835        psFree(object);
     
    1589316381    for (i = 0; i < rowSet->n; i++) {
    1589416382        detStackedImfileRow *object = detStackedImfileObjectFromMetadata(rowSet->data[i]);
     16383        if (!object) {
     16384            psFree(object);
     16385            psFree(returnSet);
     16386            psError(PS_ERR_UNKNOWN, false, "database error");
     16387            return NULL;
     16388        }
    1589516389        psArrayAdd(returnSet, 0, object);
    1589616390        psFree(object);
     
    1625116745    for (i = 0; i < rowSet->n; i++) {
    1625216746        detNormalizedStatImfileRow *object = detNormalizedStatImfileObjectFromMetadata(rowSet->data[i]);
     16747        if (!object) {
     16748            psFree(object);
     16749            psFree(returnSet);
     16750            psError(PS_ERR_UNKNOWN, false, "database error");
     16751            return NULL;
     16752        }
    1625316753        psArrayAdd(returnSet, 0, object);
    1625416754        psFree(object);
     
    1680017300    for (i = 0; i < rowSet->n; i++) {
    1680117301        detNormalizedImfileRow *object = detNormalizedImfileObjectFromMetadata(rowSet->data[i]);
     17302        if (!object) {
     17303            psFree(object);
     17304            psFree(returnSet);
     17305            psError(PS_ERR_UNKNOWN, false, "database error");
     17306            return NULL;
     17307        }
    1680217308        psArrayAdd(returnSet, 0, object);
    1680317309        psFree(object);
     
    1732717833    for (i = 0; i < rowSet->n; i++) {
    1732817834        detNormalizedExpRow *object = detNormalizedExpObjectFromMetadata(rowSet->data[i]);
     17835        if (!object) {
     17836            psFree(object);
     17837            psFree(returnSet);
     17838            psError(PS_ERR_UNKNOWN, false, "database error");
     17839            return NULL;
     17840        }
    1732917841        psArrayAdd(returnSet, 0, object);
    1733017842        psFree(object);
     
    1810818620    for (i = 0; i < rowSet->n; i++) {
    1810918621        detResidImfileRow *object = detResidImfileObjectFromMetadata(rowSet->data[i]);
     18622        if (!object) {
     18623            psFree(object);
     18624            psFree(returnSet);
     18625            psError(PS_ERR_UNKNOWN, false, "database error");
     18626            return NULL;
     18627        }
    1811018628        psArrayAdd(returnSet, 0, object);
    1811118629        psFree(object);
     
    1886619384    for (i = 0; i < rowSet->n; i++) {
    1886719385        detResidExpRow *object = detResidExpObjectFromMetadata(rowSet->data[i]);
     19386        if (!object) {
     19387            psFree(object);
     19388            psFree(returnSet);
     19389            psError(PS_ERR_UNKNOWN, false, "database error");
     19390            return NULL;
     19391        }
    1886819392        psArrayAdd(returnSet, 0, object);
    1886919393        psFree(object);
     
    1926519789    for (i = 0; i < rowSet->n; i++) {
    1926619790        detRunSummaryRow *object = detRunSummaryObjectFromMetadata(rowSet->data[i]);
     19791        if (!object) {
     19792            psFree(object);
     19793            psFree(returnSet);
     19794            psError(PS_ERR_UNKNOWN, false, "database error");
     19795            return NULL;
     19796        }
    1926719797        psArrayAdd(returnSet, 0, object);
    1926819798        psFree(object);
     
    1981420344    for (i = 0; i < rowSet->n; i++) {
    1981520345        detRegisteredImfileRow *object = detRegisteredImfileObjectFromMetadata(rowSet->data[i]);
     20346        if (!object) {
     20347            psFree(object);
     20348            psFree(returnSet);
     20349            psError(PS_ERR_UNKNOWN, false, "database error");
     20350            return NULL;
     20351        }
    1981620352        psArrayAdd(returnSet, 0, object);
    1981720353        psFree(object);
     
    2023820774    for (i = 0; i < rowSet->n; i++) {
    2023920775        detCorrectedExpRow *object = detCorrectedExpObjectFromMetadata(rowSet->data[i]);
     20776        if (!object) {
     20777            psFree(object);
     20778            psFree(returnSet);
     20779            psError(PS_ERR_UNKNOWN, false, "database error");
     20780            return NULL;
     20781        }
    2024020782        psArrayAdd(returnSet, 0, object);
    2024120783        psFree(object);
     
    2061921161    for (i = 0; i < rowSet->n; i++) {
    2062021162        detCorrectedImfileRow *object = detCorrectedImfileObjectFromMetadata(rowSet->data[i]);
     21163        if (!object) {
     21164            psFree(object);
     21165            psFree(returnSet);
     21166            psError(PS_ERR_UNKNOWN, false, "database error");
     21167            return NULL;
     21168        }
    2062121169        psArrayAdd(returnSet, 0, object);
    2062221170        psFree(object);
     
    2102421572    for (i = 0; i < rowSet->n; i++) {
    2102521573        magicRunRow *object = magicRunObjectFromMetadata(rowSet->data[i]);
     21574        if (!object) {
     21575            psFree(object);
     21576            psFree(returnSet);
     21577            psError(PS_ERR_UNKNOWN, false, "database error");
     21578            return NULL;
     21579        }
    2102621580        psArrayAdd(returnSet, 0, object);
    2102721581        psFree(object);
     
    2134021894    for (i = 0; i < rowSet->n; i++) {
    2134121895        magicInputSkyfileRow *object = magicInputSkyfileObjectFromMetadata(rowSet->data[i]);
     21896        if (!object) {
     21897            psFree(object);
     21898            psFree(returnSet);
     21899            psError(PS_ERR_UNKNOWN, false, "database error");
     21900            return NULL;
     21901        }
    2134221902        psArrayAdd(returnSet, 0, object);
    2134321903        psFree(object);
     
    2165722217    for (i = 0; i < rowSet->n; i++) {
    2165822218        magicTreeRow *object = magicTreeObjectFromMetadata(rowSet->data[i]);
     22219        if (!object) {
     22220            psFree(object);
     22221            psFree(returnSet);
     22222            psError(PS_ERR_UNKNOWN, false, "database error");
     22223            return NULL;
     22224        }
    2165922225        psArrayAdd(returnSet, 0, object);
    2166022226        psFree(object);
     
    2197422540    for (i = 0; i < rowSet->n; i++) {
    2197522541        magicNodeResultRow *object = magicNodeResultObjectFromMetadata(rowSet->data[i]);
     22542        if (!object) {
     22543            psFree(object);
     22544            psFree(returnSet);
     22545            psError(PS_ERR_UNKNOWN, false, "database error");
     22546            return NULL;
     22547        }
    2197622548        psArrayAdd(returnSet, 0, object);
    2197722549        psFree(object);
     
    2226922841    for (i = 0; i < rowSet->n; i++) {
    2227022842        magicMaskRow *object = magicMaskObjectFromMetadata(rowSet->data[i]);
     22843        if (!object) {
     22844            psFree(object);
     22845            psFree(returnSet);
     22846            psError(PS_ERR_UNKNOWN, false, "database error");
     22847            return NULL;
     22848        }
    2227122849        psArrayAdd(returnSet, 0, object);
    2227222850        psFree(object);
     
    2258523163    for (i = 0; i < rowSet->n; i++) {
    2258623164        magicSkyfileMaskRow *object = magicSkyfileMaskObjectFromMetadata(rowSet->data[i]);
     23165        if (!object) {
     23166            psFree(object);
     23167            psFree(returnSet);
     23168            psError(PS_ERR_UNKNOWN, false, "database error");
     23169            return NULL;
     23170        }
    2258723171        psArrayAdd(returnSet, 0, object);
    2258823172        psFree(object);
     
    2290223486    for (i = 0; i < rowSet->n; i++) {
    2290323487        calDBRow *object = calDBObjectFromMetadata(rowSet->data[i]);
     23488        if (!object) {
     23489            psFree(object);
     23490            psFree(returnSet);
     23491            psError(PS_ERR_UNKNOWN, false, "database error");
     23492            return NULL;
     23493        }
    2290423494        psArrayAdd(returnSet, 0, object);
    2290523495        psFree(object);
     
    2324123831    for (i = 0; i < rowSet->n; i++) {
    2324223832        calRunRow *object = calRunObjectFromMetadata(rowSet->data[i]);
     23833        if (!object) {
     23834            psFree(object);
     23835            psFree(returnSet);
     23836            psError(PS_ERR_UNKNOWN, false, "database error");
     23837            return NULL;
     23838        }
    2324323839        psArrayAdd(returnSet, 0, object);
    2324423840        psFree(object);
     
    2362424220    for (i = 0; i < rowSet->n; i++) {
    2362524221        flatcorrRunRow *object = flatcorrRunObjectFromMetadata(rowSet->data[i]);
     24222        if (!object) {
     24223            psFree(object);
     24224            psFree(returnSet);
     24225            psError(PS_ERR_UNKNOWN, false, "database error");
     24226            return NULL;
     24227        }
    2362624228        psArrayAdd(returnSet, 0, object);
    2362724229        psFree(object);
     
    2391824520    for (i = 0; i < rowSet->n; i++) {
    2391924521        flatcorrExpRow *object = flatcorrExpObjectFromMetadata(rowSet->data[i]);
     24522        if (!object) {
     24523            psFree(object);
     24524            psFree(returnSet);
     24525            psError(PS_ERR_UNKNOWN, false, "database error");
     24526            return NULL;
     24527        }
    2392024528        psArrayAdd(returnSet, 0, object);
    2392124529        psFree(object);
Note: See TracChangeset for help on using the changeset viewer.