Kaynağa Gözat

set_set: Avoid memory leak if no old value and new value is blank

Bryan Drewery 8 yıl önce
ebeveyn
işleme
26c3a838f8
1 değiştirilmiş dosya ile 6 ekleme ve 8 silme
  1. 6 8
      src/userent.cc

+ 6 - 8
src/userent.cc

@@ -283,14 +283,12 @@ static bool set_set(struct userrec *u, struct user_entry *e, void *buf)
   }
 
   /* add the new entry if it's not empty */
-  if ((!old || old != newxk) && newxk->data) {
-    if (newxk->data[0]) {
-      list_insert((struct xtra_key **) (&e->u.extra), newxk);
-    } else {
-      free(newxk->data);
-      free(newxk->key);
-      free(newxk);
-    }
+  if ((!old || old != newxk) && newxk->data && newxk->data[0]) {
+    list_insert((struct xtra_key **) (&e->u.extra), newxk);
+  } else {
+    free(newxk->data);
+    free(newxk->key);
+    free(newxk);
   }
   return 1;
 }