IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 30188


Ignore:
Timestamp:
Dec 27, 2010, 2:40:13 PM (15 years ago)
Author:
rhenders
Message:

dvoGetDetections() was crashing when hitting bogus detection IDs (of MAX_INT). Now skips these and reports to stderr if any have been encountered.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Ohana/src/libdvo/src/dvo_util.c

    r27435 r30188  
    255255      dvo_catalog_free (&catalog);
    256256  }
     257  size_t NInvalidDetID = 0;
    257258  if (Ndetect) {
    258259      dvoDetection *sorted;
     
    262263      off_t i;
    263264      for (i = 0; i < Ndetect; i++) {
    264            sorted[detections[i].meas.detID] = detections[i];
     265
     266          if (detections[i].meas.detID < 0 || detections[i].meas.detID > (*pMaxDetID + 1))
     267              NInvalidDetID++;
     268          else
     269              sorted[detections[i].meas.detID] = detections[i];
    265270      }
    266271      *results = sorted;
     
    271276  FREE(detections);
    272277
     278  if (NInvalidDetID) fprintf (stderr, "ERROR: Encountered %ld invalid detection IDs\n", NInvalidDetID);
     279
    273280  return (Ndetect);
    274281
Note: See TracChangeset for help on using the changeset viewer.