Bläddra i källkod

No need to check for free(NULL)

Bryan Drewery 11 år sedan
förälder
incheckning
8229d0d0f8
9 ändrade filer med 47 tillägg och 81 borttagningar
  1. 12 19
      src/adns.cc
  2. 1 1
      src/compat/memutil.c
  3. 1 2
      src/misc_file.cc
  4. 5 8
      src/mod/channels.mod/chanmisc.cc
  5. 10 15
      src/mod/channels.mod/userchan.cc
  6. 4 8
      src/mod/irc.mod/irc.cc
  7. 3 6
      src/shell.cc
  8. 9 18
      src/userent.cc
  9. 2 4
      src/users.cc

+ 12 - 19
src/adns.cc

@@ -251,11 +251,8 @@ static void kill_dcc_dnswait(int idx, void *x)
 	struct dns_info *p = (struct dns_info *) x;
 
 	if (p) {
-		if (p->cbuf)
-			free(p->cbuf);
-
-		if (p->cptr)
-			free(p->cptr);
+		free(p->cbuf);
+		free(p->cptr);
 		// free(p) is same thing here.
 		free(dcc[idx].u.other);
 		dcc[idx].u.other = NULL;
@@ -289,12 +286,9 @@ static void async_timeout(void *client_data)
 char s1_7[3] = "",s2_3[3] = "",s2_2[3] = "";
 
 static void free_query(dns_query_t*& q) {
-	if (q->ip)
-		free(q->ip);
-	if (q->answer)
-		delete q->answer;
-	if (q->query)
-		free(q->query);
+	free(q->ip);
+	delete q->answer;
+	free(q->query);
 	free(q);
 	q = NULL;
 }
@@ -816,21 +810,20 @@ int egg_dns_shutdown(void)
 
 	if (nservers > 0) {
 		for (i = 0; i < nservers; i++) {
-			if (servers[i].ip)
-				free(servers[i].ip);
+			free(servers[i].ip);
 		}
-		free(servers); servers = NULL;
+		free(servers);
+		servers = NULL;
 		nservers = 0;
 	}
 
 	if (nhosts > 0) {
 		for (i = 0; i < nhosts; i++) {
-			if (hosts[i].host)
-				free(hosts[i].host);
-			if (hosts[i].ip)
-				free(hosts[i].ip);
+			free(hosts[i].host);
+			free(hosts[i].ip);
 		}
-		free(hosts); hosts = NULL;
+		free(hosts);
+		hosts = NULL;
 		nhosts = 0;
 	}
 

+ 1 - 1
src/compat/memutil.c

@@ -10,7 +10,7 @@ str_redup(char **str, const char *newstr)
         size_t len;
 
         if (!newstr) {
-                if (*str) free(*str);
+                free(*str);
                 *str = NULL;
                 return;
         }

+ 1 - 2
src/misc_file.cc

@@ -274,8 +274,7 @@ static bool check_tempdir(bool do_mod)
 
   /* There was an error creating a file in this directory, return to move on in list of dirs */
   if (!testdir || testdir->error) {
-    if (testdir)
-      delete testdir;
+    delete testdir;
     return 0;
   }
 

+ 5 - 8
src/mod/channels.mod/chanmisc.cc

@@ -266,7 +266,7 @@ int SplitList(char *resultBuf, const char *list, int *argcPtr, const char ***arg
         length -= (list - prevList);
 
         if (result != OK) {
-            free((char *) argv);
+            free(argv);
             return result;
         }
 
@@ -275,7 +275,7 @@ int SplitList(char *resultBuf, const char *list, int *argcPtr, const char ***arg
         }
 
         if (i >= size) {
-            free((char *) argv);
+            free(argv);
             if (resultBuf)
                 strlcpy(resultBuf, "internal error in SplitList", RESULT_LEN);
             return ERROR;
@@ -979,10 +979,8 @@ static void clear_masklist(masklist *m)
 
   for (; m; m = temp) {
     temp = m->next;
-    if (m->mask)
-      free(m->mask);
-    if (m->who)
-      free(m->who);
+    free(m->mask);
+    free(m->who);
     free(m);
   }
 }
@@ -993,8 +991,7 @@ void clear_channel(struct chanset_t *chan, bool reset)
 {
   memberlist *m = NULL, *m1 = NULL;
 
-  if (chan->channel.topic)
-    free(chan->channel.topic);
+  free(chan->channel.topic);
   for (m = chan->channel.member; m; m = m1) {
     m1 = m->next;
     delete_member(m);

+ 10 - 15
src/mod/channels.mod/userchan.cc

@@ -105,8 +105,7 @@ void set_handle_chaninfo(struct userrec *bu, char *handle, char *chname, char *i
     if (strlen(info) > 80)
       info[80] = 0;
   }
-  if (ch->info != NULL)
-    free(ch->info);
+  free(ch->info);
   if (info && info[0]) {
     ch->info = strdup(info);
   } else
@@ -124,11 +123,10 @@ void del_chanrec(struct userrec *u, char *chname)
   while (ch) {
     if (!rfc_casecmp(chname, ch->channel)) {
       if (lst == NULL)
-	u->chanrec = ch->next;
+        u->chanrec = ch->next;
       else
-	lst->next = ch->next;
-      if (ch->info != NULL)
-	free(ch->info);
+        lst->next = ch->next;
+      free(ch->info);
       free(ch);
       if (!noshare)
 	shareout("-cr %s %s\n", u->handle, chname);
@@ -293,13 +291,10 @@ int u_delmask(char type, struct chanset_t *c, char *who, int doit)
 	free(mask);
       }
     }
-    if (lastdeletedmask)
-      free(lastdeletedmask);
+    free(lastdeletedmask);
     lastdeletedmask = (*u)->mask;
-    if ((*u)->desc)
-      free((*u)->desc);
-    if ((*u)->user)
-      free((*u)->user);
+    free((*u)->desc);
+    free((*u)->user);
     t = *u;
     *u = (*u)->next;
     free(t);
@@ -368,9 +363,9 @@ bool u_addmask(char type, struct chanset_t *chan, char *who, const char *from, c
     *u = p;
   }
   else {
-    free( p->mask );
-    free( p->user );
-    free( p->desc );
+    free(p->mask);
+    free(p->user);
+    free(p->desc);
   }
 
   p->expire = expire_time;

+ 4 - 8
src/mod/irc.mod/irc.cc

@@ -863,10 +863,8 @@ getin_request(char *botnick, char *code, char *par)
         putlog(LOG_GETIN, "*", "inreq from %s/%s for %s - Removed permanent global ban %s", botnick, nick,
                chan->dname, (*mr)->mask);
         free((*mr)->mask);
-        if ((*mr)->desc)
-          free((*mr)->desc);
-        if ((*mr)->user)
-          free((*mr)->user);
+        free((*mr)->desc);
+        free((*mr)->user);
         tmr = *mr;
         *mr = (*mr)->next;
         free(tmr);
@@ -886,10 +884,8 @@ getin_request(char *botnick, char *code, char *par)
         putlog(LOG_GETIN, "*", "inreq from %s/%s for %s - Removed permanent channel ban %s", botnick, nick,
                chan->dname, (*mr)->mask);
         free((*mr)->mask);
-        if ((*mr)->desc)
-          free((*mr)->desc);
-        if ((*mr)->user)
-          free((*mr)->user);
+        free((*mr)->desc);
+        free((*mr)->user);
         tmr = *mr;
         *mr = (*mr)->next;
         free(tmr);

+ 3 - 6
src/shell.cc

@@ -347,8 +347,7 @@ int shell_exec(char *cmdline, char *input, char **output, char **erroutput, bool
   in = new Tempfile("in");
   if (!in || in->error) {
 //    putlog(LOG_ERRORS, "*" , "exec: Couldn't open '%s': %s", in->file, strerror(errno)); 
-    if (in)
-      delete in;
+    delete in;
     return 0;
   }
 
@@ -365,8 +364,7 @@ int shell_exec(char *cmdline, char *input, char **output, char **erroutput, bool
   if (!err || err->error) {
 //    putlog(LOG_ERRORS, "*", "exec: Couldn't open '%s': %s", err->file, strerror(errno));
     delete in;
-    if (err)
-      delete err;
+    delete err;
     return 0;
   }
 
@@ -375,8 +373,7 @@ int shell_exec(char *cmdline, char *input, char **output, char **erroutput, bool
 //    putlog(LOG_ERRORS, "*", "exec: Couldn't open '%s': %s", out->file, strerror(errno));
     delete in;
     delete err;
-    if (out)
-      delete out;
+    delete out;
     return 0;
   }
 

+ 9 - 18
src/userent.cc

@@ -70,8 +70,7 @@ void list_type_kill(struct list_type *t)
 
   while (t) {
     u = t->next;
-    if (t->extra)
-      free(t->extra);
+    free(t->extra);
     free(t);
     t = u;
   }
@@ -263,8 +262,7 @@ static bool set_set(struct userrec *u, struct user_entry *e, void *buf)
   if (!old && (!newxk->data || !newxk->data[0])) {
     /* or simply ... delete non-existant entry */
     free(newxk->key);
-    if (newxk->data)
-      free(newxk->data);
+    free(newxk->data);
     free(newxk);
     return 1;
   }
@@ -283,8 +281,7 @@ static bool set_set(struct userrec *u, struct user_entry *e, void *buf)
     if (newxk->data[0]) {
       list_insert((struct xtra_key **) (&e->u.extra), newxk);
     } else {
-      if (newxk->data)
-        free(newxk->data);
+      free(newxk->data);
       free(newxk->key);
       free(newxk);
     }
@@ -380,8 +377,7 @@ static bool set_kill(struct user_entry *e)
   for (; x; x = y) {
     y = x->next;
     free(x->key);
-    if (x->data)
-      free(x->data);
+    free(x->data);
     free(x);
   }
   free(e);
@@ -568,8 +564,7 @@ static bool pass_set(struct userrec *u, struct user_entry *e, void *buf)
   char *newpass = NULL;
   char *pass = (char *) buf;
 
-  if (e->u.extra)
-    free(e->u.extra);
+  free(e->u.extra);
   if (!pass || !pass[0] || (pass[0] == '-'))
     e->u.extra = NULL;
   else {
@@ -589,8 +584,7 @@ static bool pass_set(struct userrec *u, struct user_entry *e, void *buf)
   }
   if (!noshare)
     shareout("c %s %s %s\n", e->type->name, u->handle, newpass ? newpass : "");
-  if (newpass)
-    free(newpass);
+  free(newpass);
 
   /* clear old records */
   noshare = 1;
@@ -616,8 +610,7 @@ static bool pass1_set(struct userrec *u, struct user_entry *e, void *buf)
 {
   char *pass = (char *) buf;
 
-  if (e->u.extra)
-    free(e->u.extra);
+  free(e->u.extra);
   if (!pass || !pass[0] || (pass[0] == '-'))
     e->u.extra = NULL;
   else {
@@ -706,8 +699,7 @@ static void laston_write_userfile(bd::Stream& stream, const struct userrec *u, c
 
 static bool laston_kill(struct user_entry *e)
 {
-  if (((struct laston_info *) (e->u.extra))->lastonplace)
-    free(((struct laston_info *) (e->u.extra))->lastonplace);
+  free(((struct laston_info *) (e->u.extra))->lastonplace);
   free(e->u.extra);
   free(e);
   return 1;
@@ -984,8 +976,7 @@ static bool hosts_set(struct userrec *u, struct user_entry *e, void *buf)
 
 	listu = *t;
 	*t = (*t)->next;
-	if (listu->extra)
-	  free(listu->extra);
+        free(listu->extra);
 	free(listu);
       } else
 	t = &((*t)->next);

+ 2 - 4
src/users.cc

@@ -116,10 +116,8 @@ char *delignore(char *ign)
       }
     }
     free((*u)->igmask);
-    if ((*u)->msg)
-      free((*u)->msg);
-    if ((*u)->user)
-      free((*u)->user);
+    free((*u)->msg);
+    free((*u)->user);
     t = *u;
     *u = (*u)->next;
     free(t);