Revision: 76901
http://sourceforge.net/p/brlcad/code/76901
Author: brlcad
Date: 2020-08-23 16:09:08 +0000 (Sun, 23 Aug 2020)
Log Message:
-----------
simplify and make sure we're not printing a null pointer. seems unlikely logic
is correctly / gracefully handling there being no dm.
Modified Paths:
--------------
brlcad/trunk/src/libdm/dm_plugins.cpp
Modified: brlcad/trunk/src/libdm/dm_plugins.cpp
===================================================================
--- brlcad/trunk/src/libdm/dm_plugins.cpp 2020-08-23 13:35:34 UTC (rev
76900)
+++ brlcad/trunk/src/libdm/dm_plugins.cpp 2020-08-23 16:09:08 UTC (rev
76901)
@@ -43,12 +43,9 @@
extern "C" struct dm *
dm_open(void *interp, const char *type, int argc, const char *argv[])
{
- if (BU_STR_EQUIV(type, "nu")) {
+ if (BU_STR_EQUIV(type, "nu") || BU_STR_EQUIV(type, "null")) {
return dm_null.i->dm_open(interp, argc, argv);
}
- if (BU_STR_EQUIV(type, "null")) {
- return dm_null.i->dm_open(interp, argc, argv);
- }
std::map<std::string, const struct dm *> *dmb = (std::map<std::string,
const struct dm *> *)dm_backends;
std::string key(type);
std::transform(key.begin(), key.end(), key.begin(), [](unsigned char c){
return std::tolower(c); });
@@ -126,7 +123,8 @@
std::string key = d_it->first;
const struct dm *d = d_it->second;
if (strlen(bu_vls_cstr(list)) > 0) bu_vls_printf(list, "%s",
bu_vls_cstr(&sep));
- bu_vls_printf(list, "%s", dm_get_name(d));
+ if (dm_get_name(d))
+ bu_vls_printf(list, "%s", dm_get_name(d));
}
if (strlen(bu_vls_cstr(list)) > 0) bu_vls_printf(list, "%s",
bu_vls_cstr(&sep));
bu_vls_printf(list, "nu");
@@ -147,7 +145,8 @@
}
const struct dm *d = d_it->second;
if (strlen(bu_vls_cstr(list)) > 0) bu_vls_printf(list, "%s",
bu_vls_cstr(&sep));
- bu_vls_printf(list, "%s", dm_get_name(d));
+ if (dm_get_name(d))
+ bu_vls_printf(list, "%s", dm_get_name(d));
i++;
b = priority_list[i];
}
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits