[or-cvs] Avoid segfault when freeing options_t without firewall_ports

Nick Mathewson nickm at seul.org
Wed Aug 18 07:06:55 UTC 2004


Update of /home/or/cvsroot/src/or
In directory moria.mit.edu:/tmp/cvs-serv2898/src/or

Modified Files:
	config.c 
Log Message:
Avoid segfault when freeing options_t without firewall_ports

Index: config.c
===================================================================
RCS file: /home/or/cvsroot/src/or/config.c,v
retrieving revision 1.147
retrieving revision 1.148
diff -u -d -r1.147 -r1.148
--- config.c	18 Aug 2004 04:44:24 -0000	1.147
+++ config.c	18 Aug 2004 07:06:53 -0000	1.148
@@ -545,8 +545,10 @@
   config_free_lines(options->DirBindAddress);
   config_free_lines(options->ExitPolicy);
   config_free_lines(options->SocksPolicy);
-  SMARTLIST_FOREACH(options->FirewallPorts, char *, cp, tor_free(cp));
-  smartlist_free(options->FirewallPorts);
+  if (options->FirewallPorts) {
+    SMARTLIST_FOREACH(options->FirewallPorts, char *, cp, tor_free(cp));
+    smartlist_free(options->FirewallPorts);
+  }
 }
 
 /** Set <b>options</b> to hold reasonable defaults for most options. */



More information about the tor-commits mailing list