diff options
| author | Nick Roberts | 2003-06-29 13:52:50 +0000 |
|---|---|---|
| committer | Nick Roberts | 2003-06-29 13:52:50 +0000 |
| commit | 87cae4751a7bf6ab30f35f853d15d694f7ebc8f9 (patch) | |
| tree | 9b2c7f9740cc19fb7ab60e61aaff8beae81dcecf | |
| parent | 25606af1164c4f68f1f163b21f14d495064d72ef (diff) | |
| download | emacs-87cae4751a7bf6ab30f35f853d15d694f7ebc8f9.tar.gz emacs-87cae4751a7bf6ab30f35f853d15d694f7ebc8f9.zip | |
(gdb-display-number-end): Don't re-initialise local
variables to preserve array slices.
(gdb-array-slice): Rename gdb-mouse-array-slice.
(gdb-array-slice): Interactive function bound to "\r" for text
terminals.
(gdb-view-source): Rename gdb-view-source-function.
Set uninitialised variables (defvars) to nil.
| -rw-r--r-- | lisp/gdb-ui.el | 44 |
1 files changed, 25 insertions, 19 deletions
diff --git a/lisp/gdb-ui.el b/lisp/gdb-ui.el index 2373b51ea66..816cbda4818 100644 --- a/lisp/gdb-ui.el +++ b/lisp/gdb-ui.el | |||
| @@ -710,9 +710,9 @@ output from the current command if that happens to be appropriate." | |||
| 710 | (gdb-clear-partial-output) | 710 | (gdb-clear-partial-output) |
| 711 | (setq gdb-display-in-progress t)) | 711 | (setq gdb-display-in-progress t)) |
| 712 | 712 | ||
| 713 | (defvar gdb-expression-buffer-name) | 713 | (defvar gdb-expression-buffer-name nil) |
| 714 | (defvar gdb-display-number) | 714 | (defvar gdb-display-number nil) |
| 715 | (defvar gdb-dive-display-number) | 715 | (defvar gdb-dive-display-number nil) |
| 716 | 716 | ||
| 717 | (defun gdb-display-number-end (ignored) | 717 | (defun gdb-display-number-end (ignored) |
| 718 | (set-buffer (gdb-get-buffer 'gdb-partial-output-buffer)) | 718 | (set-buffer (gdb-get-buffer 'gdb-partial-output-buffer)) |
| @@ -730,26 +730,27 @@ output from the current command if that happens to be appropriate." | |||
| 730 | (gdb-expressions-mode) | 730 | (gdb-expressions-mode) |
| 731 | (setq gdb-dive-display-number number))) | 731 | (setq gdb-dive-display-number number))) |
| 732 | (set-buffer (get-buffer-create gdb-expression-buffer-name)) | 732 | (set-buffer (get-buffer-create gdb-expression-buffer-name)) |
| 733 | (gdb-expressions-mode) | 733 | (if (display-graphic-p) |
| 734 | (if (and (display-graphic-p) (not gdb-dive)) | ||
| 735 | (catch 'frame-exists | 734 | (catch 'frame-exists |
| 736 | (dolist (frame (frame-list)) | 735 | (dolist (frame (frame-list)) |
| 737 | (if (string-equal (frame-parameter frame 'name) | 736 | (if (string-equal (frame-parameter frame 'name) |
| 738 | gdb-expression-buffer-name) | 737 | gdb-expression-buffer-name) |
| 739 | (throw 'frame-exists nil))) | 738 | (throw 'frame-exists nil))) |
| 739 | (gdb-expressions-mode) | ||
| 740 | (make-frame `((height . ,gdb-window-height) | 740 | (make-frame `((height . ,gdb-window-height) |
| 741 | (width . ,gdb-window-width) | 741 | (width . ,gdb-window-width) |
| 742 | (tool-bar-lines . nil) | 742 | (tool-bar-lines . nil) |
| 743 | (menu-bar-lines . nil) | 743 | (menu-bar-lines . nil) |
| 744 | (minibuffer . nil)))) | 744 | (minibuffer . nil)))) |
| 745 | (gdb-expressions-mode) | ||
| 745 | (gdb-display-buffer (get-buffer gdb-expression-buffer-name))))) | 746 | (gdb-display-buffer (get-buffer gdb-expression-buffer-name))))) |
| 746 | (set-buffer (gdb-get-buffer 'gdb-partial-output-buffer)) | 747 | (set-buffer (gdb-get-buffer 'gdb-partial-output-buffer)) |
| 747 | (setq gdb-dive nil)) | 748 | (setq gdb-dive nil)) |
| 748 | 749 | ||
| 749 | (defvar gdb-nesting-level) | 750 | (defvar gdb-nesting-level nil) |
| 750 | (defvar gdb-expression) | 751 | (defvar gdb-expression nil) |
| 751 | (defvar gdb-point) | 752 | (defvar gdb-point nil) |
| 752 | (defvar gdb-annotation-arg) | 753 | (defvar gdb-annotation-arg nil) |
| 753 | 754 | ||
| 754 | (defun gdb-delete-line () | 755 | (defun gdb-delete-line () |
| 755 | "Delete the current line." | 756 | "Delete the current line." |
| @@ -954,7 +955,7 @@ output from the current command if that happens to be appropriate." | |||
| 954 | 'local-map gdb-dive-map))) | 955 | 'local-map gdb-dive-map))) |
| 955 | (delete-region start end))) | 956 | (delete-region start end))) |
| 956 | 957 | ||
| 957 | (defvar gdb-values) | 958 | (defvar gdb-values nil) |
| 958 | 959 | ||
| 959 | (defun gdb-array-format () | 960 | (defun gdb-array-format () |
| 960 | (while (re-search-forward "##" nil t) | 961 | (while (re-search-forward "##" nil t) |
| @@ -980,18 +981,23 @@ output from the current command if that happens to be appropriate." | |||
| 980 | (setq gdb-nesting-level (- gdb-nesting-level 1)) | 981 | (setq gdb-nesting-level (- gdb-nesting-level 1)) |
| 981 | (gdb-array-format))))) | 982 | (gdb-array-format))))) |
| 982 | 983 | ||
| 983 | (defvar gdb-array-start) | 984 | (defvar gdb-array-start nil) |
| 984 | (defvar gdb-array-stop) | 985 | (defvar gdb-array-stop nil) |
| 985 | 986 | ||
| 986 | (defvar gdb-array-slice-map | 987 | (defvar gdb-array-slice-map |
| 987 | (let ((map (make-sparse-keymap))) | 988 | (let ((map (make-sparse-keymap))) |
| 988 | (define-key map [mouse-2] 'gdb-array-slice) | 989 | (define-key map "\r" 'gdb-array-slice) |
| 990 | (define-key map [mouse-2] 'gdb-mouse-array-slice) | ||
| 989 | map)) | 991 | map)) |
| 990 | 992 | ||
| 991 | (defun gdb-array-slice (event) | 993 | (defun gdb-mouse-array-slice (event) |
| 992 | "Select an array slice to display." | 994 | "Select an array slice to display." |
| 993 | (interactive "e") | 995 | (interactive "e") |
| 994 | (mouse-set-point event) | 996 | (mouse-set-point event) |
| 997 | (gdb-array-slice)) | ||
| 998 | |||
| 999 | (defun gdb-array-slice () | ||
| 1000 | (interactive) | ||
| 995 | (save-excursion | 1001 | (save-excursion |
| 996 | (let ((n -1) (stop 0) (start 0) (point (point))) | 1002 | (let ((n -1) (stop 0) (start 0) (point (point))) |
| 997 | (beginning-of-line) | 1003 | (beginning-of-line) |
| @@ -1003,8 +1009,8 @@ output from the current command if that happens to be appropriate." | |||
| 1003 | (aset gdb-array-stop n stop))) | 1009 | (aset gdb-array-stop n stop))) |
| 1004 | (gdb-array-format1)) | 1010 | (gdb-array-format1)) |
| 1005 | 1011 | ||
| 1006 | (defvar gdb-display-string) | 1012 | (defvar gdb-display-string nil) |
| 1007 | (defvar gdb-array-size) | 1013 | (defvar gdb-array-size nil) |
| 1008 | 1014 | ||
| 1009 | (defun gdb-array-format1 () | 1015 | (defun gdb-array-format1 () |
| 1010 | (setq gdb-display-string "") | 1016 | (setq gdb-display-string "") |
| @@ -2002,7 +2008,7 @@ the source buffer." | |||
| 2002 | "Display other windows" "Many Windows %s" | 2008 | "Display other windows" "Many Windows %s" |
| 2003 | "Display locals, stack and breakpoint information")) | 2009 | "Display locals, stack and breakpoint information")) |
| 2004 | 2010 | ||
| 2005 | (let ((menu (make-sparse-keymap "GDB-Frames"))) | 2011 | (let ((menu (make-sparse-keymap "GDB-Frames"))) |
| 2006 | (define-key gud-menu-map [frames] | 2012 | (define-key gud-menu-map [frames] |
| 2007 | `(menu-item "GDB-Frames" ,menu :visible (eq gud-minor-mode 'gdba))) | 2013 | `(menu-item "GDB-Frames" ,menu :visible (eq gud-minor-mode 'gdba))) |
| 2008 | (define-key menu [gdb] '("Gdb" . gdb-frame-gdb-buffer)) | 2014 | (define-key menu [gdb] '("Gdb" . gdb-frame-gdb-buffer)) |
| @@ -2036,7 +2042,7 @@ the source buffer." | |||
| 2036 | (define-key menu [assembler] '(menu-item "Assembler" gdb-view-assembler | 2042 | (define-key menu [assembler] '(menu-item "Assembler" gdb-view-assembler |
| 2037 | :help "Display assembler only" | 2043 | :help "Display assembler only" |
| 2038 | :button (:radio . (eq gdb-selected-view 'assembler)))) | 2044 | :button (:radio . (eq gdb-selected-view 'assembler)))) |
| 2039 | (define-key menu [source] '(menu-item "Source" gdb-view-source | 2045 | (define-key menu [source] '(menu-item "Source" gdb-view-source-function |
| 2040 | :help "Display source only" | 2046 | :help "Display source only" |
| 2041 | :button (:radio . (eq gdb-selected-view 'source))))) | 2047 | :button (:radio . (eq gdb-selected-view 'source))))) |
| 2042 | 2048 | ||
| @@ -2052,7 +2058,7 @@ the source buffer." | |||
| 2052 | 2058 | ||
| 2053 | (defvar gdb-main-file nil "Source file from which program execution begins.") | 2059 | (defvar gdb-main-file nil "Source file from which program execution begins.") |
| 2054 | 2060 | ||
| 2055 | (defun gdb-view-source() | 2061 | (defun gdb-view-source-function () |
| 2056 | (interactive) | 2062 | (interactive) |
| 2057 | (if gdb-view-source | 2063 | (if gdb-view-source |
| 2058 | (if gud-last-last-frame | 2064 | (if gud-last-last-frame |