Initialize the frame_table_size field of the private data to 0 and the
authorGuy Harris <guy@alum.mit.edu>
Sun, 2 Jun 2013 18:09:13 +0000 (18:09 -0000)
committerGuy Harris <guy@alum.mit.edu>
Sun, 2 Jun 2013 18:09:13 +0000 (18:09 -0000)
frame_table field to NULL before trying to allocate the frame table, so
that if we fail before we allocate the frame table, the attempt to free
the private data doesn't crash due to the frame_table field containing a
bogus pointer.

svn path=/trunk/; revision=49697

wiretap/netmon.c

index 9f5d1b55783b63931c6786ee5bebcef3457cd012..ac5c5037d692914ef2a3c9a185aa22473fa6cb60 100644 (file)
@@ -307,6 +307,15 @@ int netmon_open(wtap *wth, int *err, gchar **err_info)
        netmon->version_major = hdr.ver_major;
        netmon->version_minor = hdr.ver_minor;
 
+       /*
+        * No frame table allocated yet; initialize these in case we
+        * get an error before allocating it or when trying to allocate
+        * it, so that the attempt to release the private data on failure
+        * doesn't crash.
+        */
+       netmon->frame_table_size = 0;
+       netmon->frame_table = NULL;
+
        /*
         * Get the offset of the frame index table.
         */