Don't segfault when in --one-file mode
authorAndrew Bartlett <abartlet@samba.org>
Tue, 12 Jan 2010 02:22:10 +0000 (13:22 +1100)
committerAndrew Bartlett <abartlet@samba.org>
Sat, 2 Oct 2010 02:15:47 +0000 (12:15 +1000)
The problem is that on Linux, fclose() of a NULL pointer segfaults

lib/asn1/gen.c

index b1a4042d6d5632471df55dfe391d55f7486ad994..d59f3bfa4755de9f790c231c7518dd2660e02fd8 100644 (file)
@@ -284,11 +284,15 @@ close_generate (void)
 {
     fprintf (headerfile, "#endif /* __%s_h__ */\n", headerbase);
 
-    fclose (headerfile);
-    fclose (privheaderfile);
-    fclose (templatefile);
-    fprintf (logfile, "\n");
-    fclose (logfile);
+    if (headerfile)
+        fclose (headerfile);
+    if (privheaderfile)
+        fclose (privheaderfile);
+    if (templatefile)
+        fclose (templatefile);
+    if (logfile)
+        fprintf (logfile, "\n");
+        fclose (logfile);
 }
 
 void