# HG changeset patch # User Nick Roberts # Date 1082243657 0 # Node ID c3272c09f9278b2fbc5ff53e00d3378adb590fed # Parent 3df2682fa3a788c4ccc4a55eeeeafa478ce38648 (gdb-goto-info): Require 'info. (gdb-info-breakpoints-custom): Revert previous change. (gdb-view-assembler): Update assembler if necessary. (gdb-frame-handler): Parse correctly for gdb-current-frame. (gdb-display-source-buffer): Update properly when both source and assembler are visible. diff -r 3df2682fa3a7 -r c3272c09f927 lisp/progmodes/gdb-ui.el --- a/lisp/progmodes/gdb-ui.el Sat Apr 17 23:13:35 2004 +0000 +++ b/lisp/progmodes/gdb-ui.el Sat Apr 17 23:14:17 2004 +0000 @@ -222,6 +222,7 @@ (defun gdb-goto-info () (interactive) (select-frame (make-frame)) + (require 'info) (Info-goto-node "(emacs)GDB Graphical Interface")) (defconst gdb-var-create-regexp @@ -688,9 +689,9 @@ (string-to-int (match-string 2 args)))) (setq gdb-current-address (match-string 3 args)) (setq gdb-view-source t) -;; cover for auto-display output which comes *before* -;; stopped annotation - (if (eq (gdb-get-output-sink) 'inferior) (gdb-set-output-sink 'user))) + ;; cover for auto-display output which comes *before* + ;; stopped annotation + (if (eq (gdb-get-output-sink) 'inferior) (gdb-set-output-sink 'user))) (defun gdb-send-item (item) (if gdb-enable-debug-log (push (cons 'send item) gdb-debug-log)) @@ -1112,7 +1113,8 @@ (save-excursion (goto-line (string-to-number line)) (gdb-put-breakpoint-icon (eq flag ?y))))))))) - (end-of-line)))))) + (end-of-line))))) + (if (gdb-get-buffer 'gdb-assembler-buffer) (gdb-assembler-custom))) (defun gdb-mouse-toggle-breakpoint (event) "Toggle breakpoint with mouse click in left margin." @@ -1532,11 +1534,9 @@ (defun gdb-display-source-buffer (buffer) (if (eq gdb-selected-view 'source) - (progn (gdb-display-buffer buffer) - (get-buffer-window buffer)) - (gdb-display-buffer (gdb-get-buffer 'gdb-assembler-buffer)) - nil)) + (gdb-display-buffer (gdb-get-buffer 'gdb-assembler-buffer))) + (get-buffer-window buffer)) ;;; Shared keymap initialization: @@ -1612,6 +1612,7 @@ (defun gdb-view-assembler() (interactive) (gdb-display-buffer (gdb-get-create-buffer 'gdb-assembler-buffer)) + (gdb-invalidate-assembler) (setq gdb-selected-view 'assembler)) ;(defun gdb-view-both() @@ -1964,7 +1965,7 @@ (with-current-buffer (gdb-get-create-buffer 'gdb-partial-output-buffer) (goto-char (point-min)) (forward-line) - (if (looking-at ".*=\\s-+0x\\(\\S-*\\)\\s-+in\\s-+\\(\\S-*\\)") + (if (looking-at ".*=\\s-+0x\\(\\S-*\\)\\s-+in\\s-+\\(\\S-*?\\);? ") (progn (setq gdb-current-frame (match-string 2)) (let ((address (match-string 1)))