OSDN Git Service

2011-03-01 Michael Snyder <msnyder@vmware.com>
authormsnyder <msnyder>
Fri, 11 Mar 2011 05:24:27 +0000 (05:24 +0000)
committermsnyder <msnyder>
Fri, 11 Mar 2011 05:24:27 +0000 (05:24 +0000)
* p-typeprint.c (pascal_type_print_method_args): Don't use
pointer until after null-check.

gdb/ChangeLog
gdb/p-typeprint.c

index 19a767e..a9991ea 100644 (file)
@@ -1,5 +1,8 @@
 2011-03-10  Michael Snyder  <msnyder@vmware.com>
 
+       * p-typeprint.c (pascal_type_print_method_args): Don't use 
+       pointer until after null-check.
+
        * tracepoint.c (cmd_qtv): Discard unused value 'packet'.
        (cmd_qtframe): Ditto.
        (cmd_qtbuffer): Ditto.
index 54a761d..fb3f3a1 100644 (file)
@@ -156,18 +156,18 @@ void
 pascal_type_print_method_args (char *physname, char *methodname,
                               struct ui_file *stream)
 {
-  int is_constructor = (strncmp (physname, "__ct__", 6) == 0);
-  int is_destructor = (strncmp (physname, "__dt__", 6) == 0);
-
-  if (is_constructor || is_destructor)
-    {
-      physname += 6;
-    }
-
   fputs_filtered (methodname, stream);
 
   if (physname && (*physname != 0))
     {
+      int is_constructor = (strncmp (physname, "__ct__", 6) == 0);
+      int is_destructor = (strncmp (physname, "__dt__", 6) == 0);
+
+      if (is_constructor || is_destructor)
+       {
+         physname += 6;
+       }
+
       fputs_filtered (" (", stream);
       /* We must demangle this.  */
       while (isdigit (physname[0]))