Revision: 43793 http://brlcad.svn.sourceforge.net/brlcad/?rev=43793&view=rev Author: brlcad Date: 2011-03-08 21:19:51 +0000 (Tue, 08 Mar 2011)
Log Message: ----------- add some error recovery to gqa so that we don't bomb out during bu_malloc/bu_calloc when passed a zero size allocation. probably means something earlier went awry but check here regardless so we can be more graceful about halting. Modified Paths: -------------- brlcad/trunk/src/libged/gqa.c Modified: brlcad/trunk/src/libged/gqa.c =================================================================== --- brlcad/trunk/src/libged/gqa.c 2011-03-08 21:05:55 UTC (rev 43792) +++ brlcad/trunk/src/libged/gqa.c 2011-03-08 21:19:51 UTC (rev 43793) @@ -1498,9 +1498,30 @@ int i; int m; - if (start > ac) /* what? */ + if (start > ac) { + /* what? */ + bu_log("WARNING: Internal error (start:%d > ac:%d).\n", start, ac); return; + } + if (num_objects < 1) { + /* what?? */ + bu_log("WARNING: No objects remaining.\n"); + return; + } + + if (num_views == 0) { + /* crap. */ + bu_log("WARNING: No views specified.\n"); + return; + } + + if (rtip->nregions == 0) { + /* dammit! */ + bu_log("WARNING: No regions remaining.\n"); + return; + } + state->m_lenDensity = bu_calloc(num_views, sizeof(double), "densityLen"); state->m_len = bu_calloc(num_views, sizeof(double), "volume"); state->m_volume = bu_calloc(num_views, sizeof(double), "volume"); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ------------------------------------------------------------------------------ What You Don't Know About Data Connectivity CAN Hurt You This paper provides an overview of data connectivity, details its effect on application quality, and explores various alternative solutions. http://p.sf.net/sfu/progress-d2d _______________________________________________ BRL-CAD Source Commits mailing list brlcad-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/brlcad-commits