fixing mem leak and runaway loop
authormiker <miker@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Thu, 29 Jun 2006 13:20:19 +0000 (13:20 +0000)
committermiker <miker@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Thu, 29 Jun 2006 13:20:19 +0000 (13:20 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/trunk@4830 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/src/c-apps/oils_cstore.c

index fac5a61..8010bfc 100644 (file)
@@ -112,8 +112,13 @@ int osrfAppInitialize() {
        while (kid) {
                if (!strcmp( (char*)kid->name, "class" )) {
 
-                       if (!strcmp(xmlGetNsProp(kid, "virtual", PERSIST_NS), "true"))
+                       char* virt_class = xmlGetNsProp(kid, "virtual", PERSIST_NS);
+                       if (!strcmp(virt_class, "true")) {
+                               free(virt_class);
+                               kid = kid->next;
                                continue;
+                       }
+                       free(virt_class);
                        
                        usrData = osrfNewHash();
                        osrfHashSet( usrData, xmlGetProp(kid, "id"), "classname");