Revision: 76905
http://sourceforge.net/p/brlcad/code/76905
Author: brlcad
Date: 2020-08-23 16:15:00 +0000 (Sun, 23 Aug 2020)
Log Message:
-----------
should manually initialize all embedded structs on creation, particularly vls
so the magic is set correctly
Modified Paths:
--------------
brlcad/trunk/src/libdm/dm-generic.c
Modified: brlcad/trunk/src/libdm/dm-generic.c
===================================================================
--- brlcad/trunk/src/libdm/dm-generic.c 2020-08-23 16:13:18 UTC (rev 76904)
+++ brlcad/trunk/src/libdm/dm-generic.c 2020-08-23 16:15:00 UTC (rev 76905)
@@ -141,8 +141,12 @@
struct dm *new_dm = DM_NULL;
BU_GET(new_dm, struct dm);
BU_GET(new_dm->i, struct dm_impl);
+
+ /* have to manually initialize all internal structs */
bu_vls_init(&new_dm->i->dm_pathName);
+ bu_vls_init(&new_dm->i->dm_tkName);
bu_vls_init(&new_dm->i->dm_dName);
+ bu_vls_init(&new_dm->i->dm_log);
return new_dm;
}
@@ -151,9 +155,14 @@
dm_put(struct dm *dmp)
{
if (dmp && dmp != DM_NULL) {
+ /* have to manually de-initialize all internal structs */
bu_vls_free(&dmp->i->dm_pathName);
+ bu_vls_free(&dmp->i->dm_tkName);
bu_vls_free(&dmp->i->dm_dName);
- if (dmp->i->fbp) fb_put(dmp->i->fbp);
+ bu_vls_free(&dmp->i->dm_log);
+
+ if (dmp->i->fbp)
+ fb_put(dmp->i->fbp);
if (dmp->i->dm_put_internal)
dmp->i->dm_put_internal(dmp);
BU_PUT(dmp->i, struct dm_impl);
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