Fix the previous fix
No more segfaults or compilewarnings.
diff --git a/ip6tables.c b/ip6tables.c
index d250882..17bdb4e 100644
--- a/ip6tables.c
+++ b/ip6tables.c
@@ -1670,7 +1670,6 @@
 	const char *modprobe = NULL;
 	int proto_used = 0;
 	char icmp6p[] = "icmpv6";
-	int no_handle = 0;
 
 	memset(&fw, 0, sizeof(fw));
 
@@ -2148,10 +2147,8 @@
 			   chain, IP6T_FUNCTION_MAXNAMELEN);
 
 	/* only allocate handle if we weren't called with a handle */
-	if (!*handle) {
+	if (!*handle)
 		*handle = ip6tc_init(*table);
-		no_handle = 1;
-	}
 
 	if (!*handle) {
 		/* try to insmod the module if iptc_init failed */
@@ -2296,8 +2293,5 @@
 	if (verbose > 1)
 		dump_entries6(*handle);
 
-	if (no_handle)
-		ip6tc_free(handle);
-
 	return ret;
 }