]> git.proxmox.com Git - pve-cluster.git/commitdiff
Fix #1383: pmxcfs: use memdb_tree_entry_free()
authorWolfgang Bumiller <w.bumiller@proxmox.com>
Tue, 16 May 2017 09:32:41 +0000 (11:32 +0200)
committerWolfgang Bumiller <w.bumiller@proxmox.com>
Thu, 1 Jun 2017 06:52:20 +0000 (08:52 +0200)
Use the right destructor instead of g_free(), as it may
contain another data pointer which needs freeing.

data/src/cfs-plug-memdb.c
data/src/dcdb.c

index c0619f94d4c37448cf95371d03e2efe6456628da..cc12874bf7412ca1353e73e23dd6e687f527534b 100644 (file)
@@ -129,7 +129,7 @@ static int cfs_plug_memdb_getattr(cfs_plug_t *plug, const char *path, struct sta
 
        if (te) {
                tree_entry_stat(te, stbuf, cfs_is_quorate());
-               g_free(te);
+               memdb_tree_entry_free(te);
                return 0;
        }
 
@@ -192,7 +192,7 @@ static int cfs_plug_memdb_open(cfs_plug_t *plug, const char *path, struct fuse_f
        cfs_plug_memdb_t *mdb = (cfs_plug_memdb_t *)plug;
 
        if ((te = memdb_getattr(mdb->memdb, path))) {
-               g_free(te);
+               memdb_tree_entry_free(te);
        } else 
                return -ENOENT;
 
@@ -443,8 +443,7 @@ static int cfs_plug_memdb_utimens(
                }
        }
 
-       if (te)
-               g_free(te);
+       memdb_tree_entry_free(te);
 
        return res;
 }
index df7b37a67c566ee6248e25a83b88bcb2e28e5525..66d1b0fdec004599bc9f1d555d5f47ce4a2e9ce7 100644 (file)
@@ -845,6 +845,7 @@ dcdb_deliver(
                                }
                        }
                }
+               memdb_tree_entry_free(te);
 
        } else if (msg_type == DCDB_MESSAGE_CFS_WRITE) {