]> git.eshelyaron.com Git - emacs.git/commitdiff
(gdb-var-list-children-handler): Handle C++ classes
authorNick Roberts <nickrob@snap.net.nz>
Wed, 17 Mar 2004 23:53:00 +0000 (23:53 +0000)
committerNick Roberts <nickrob@snap.net.nz>
Wed, 17 Mar 2004 23:53:00 +0000 (23:53 +0000)
properly for watching in speedbar.

lisp/gdb-ui.el

index 456f6b7028602d14b56a7d2111a0fe2f4309526c..1ae5ce2cfcebe4eb441b72fa9681db2c63dc665b 100644 (file)
@@ -251,7 +251,7 @@ speedbar."
             `(lambda () (gdb-var-list-children-handler ,varnum)))))
 
 (defconst gdb-var-list-children-regexp
-"name=\"\\(.*?\\)\",exp=\"\\(.*?\\)\",numchild=\"\\(.*?\\)\",type=\"\\(.*?\\)\"")
+"name=\"\\(.*?\\)\",exp=\"\\(.*?\\)\",numchild=\"\\(.*?\\)\"")
 
 (defun gdb-var-list-children-handler (varnum)
   (with-current-buffer (gdb-get-create-buffer 'gdb-partial-output-buffer)
@@ -266,9 +266,9 @@ speedbar."
                 (let ((varchild (list (match-string 2)
                                       (match-string 1)
                                       (match-string 3)
-                                      (match-string 5)
-                                      (match-string 4)
-                                      nil)))
+                                      nil nil nil)))
+                  (if (looking-at ",type=\"\\(.*?\\)\"")
+                      (setcar (nthcdr 3 varchild) (match-string 1)))
                   (dolist (var1 gdb-var-list)
                     (if (string-equal (cadr var1) (cadr varchild))
                         (throw 'child-already-watched nil)))