g_error() if registering a subtree item type already registered (or not initialized...
authorwmeier <wmeier@f5534014-38df-0310-8fa8-9805f1628bb7>
Sun, 9 Aug 2009 15:49:02 +0000 (15:49 +0000)
committerwmeier <wmeier@f5534014-38df-0310-8fa8-9805f1628bb7>
Sun, 9 Aug 2009 15:49:02 +0000 (15:49 +0000)
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@29352 f5534014-38df-0310-8fa8-9805f1628bb7

epan/proto.c

index 485b515b1c27b281b7ad83ae2bb1a0ff0a15d7ac..4c5ffdc2cafcbe5c42ae1a805dfe4f39491b02bd 100644 (file)
@@ -4018,8 +4018,16 @@ proto_register_subtree_array(gint *const *indices, int num_indices)
         * first element is pointed to by "indices", and update
         * "num_tree_types" appropriately.
         */
-       for (i = 0; i < num_indices; i++, ptr++, num_tree_types++)
+       for (i = 0; i < num_indices; i++, ptr++, num_tree_types++) {
+               if (**ptr != -1) {
+                       /* g_error will terminate the program */
+                       g_error("register_subtree_array: subtree item type (ett_...) not -1 !"
+                               " This is a development error:"
+                               " Either the subtree item type has already been assigned or"
+                               " was not initialized to -1.");
+               }
                **ptr = num_tree_types;
+       }
 }
 
 void