[brlcad-commits] CVS: brlcad/src/librt g_dsp.c,14.16,14.17
Open Source Solid Modeling CAD
Brought to you by:
brlcad
From: Sean M. <br...@us...> - 2007-03-03 00:14:07
|
Update of /cvsroot/brlcad/brlcad/src/librt In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv9013 Modified Files: g_dsp.c Log Message: fix a bug, or at least really bad behavior, where calling up the wireframe of a dsp that failed to load any data would cause the app (mged) to abort. the abort was due to a BU_CK_MAPPED_FILE that was occurring before an already existing check for whether the data was valid. reordered correctly, and updated the error message to say what wasn't found so the user might have an idea of what to look for. Index: g_dsp.c =================================================================== RCS file: /cvsroot/brlcad/brlcad/src/librt/g_dsp.c,v retrieving revision 14.16 retrieving revision 14.17 diff -w -u -r14.16 -r14.17 --- g_dsp.c 27 Jan 2007 01:41:40 -0000 14.16 +++ g_dsp.c 3 Mar 2007 00:14:06 -0000 14.17 @@ -3136,19 +3136,27 @@ switch (dsp_ip->dsp_datasrc) { case RT_DSP_SRC_V4_FILE: case RT_DSP_SRC_FILE: - BU_CK_MAPPED_FILE(dsp_ip->dsp_mp); if (! dsp_ip->dsp_mp ) { - bu_log("cannot find data for DSP\n"); + if (dsp_ip->dsp_name) { + bu_log("Cannot find data for DSP, data file [%s] not found\n", dsp_ip->dsp_name); + } else { + bu_log("Cannot find data for DSP\n"); + } return 0; } + BU_CK_MAPPED_FILE(dsp_ip->dsp_mp); break; case RT_DSP_SRC_OBJ: - RT_CK_DB_INTERNAL(dsp_ip->dsp_bip); - RT_CK_BINUNIF(dsp_ip->dsp_bip->idb_ptr); if (! dsp_ip->dsp_bip ) { - bu_log("cannot find data for DSP\n"); + if (dsp_ip->dsp_name) { + bu_log("Cannot find data for DSP, data object [%s] not found\n", dsp_ip->dsp_name); + } else { + bu_log("Cannot find data for DSP\n"); + } return 0; } + RT_CK_DB_INTERNAL(dsp_ip->dsp_bip); + RT_CK_BINUNIF(dsp_ip->dsp_bip->idb_ptr); break; } |