aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lisp/ChangeLog7
-rw-r--r--lisp/progmodes/gdb-ui.el77
2 files changed, 45 insertions, 39 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 36a7b44bc81..719b5a4948d 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,10 @@
12008-04-28 Nick Roberts <nickrob@snap.net.nz>
2
3 * progmodes/gdb-ui.el (gdb-info-breakpoints-custom): Make breakpoint
4 icons work for assembler, i.e. FILE.s, FILE.S (not disassembly).
5 (gdb-goto-breakpoint): Likewise for visiting breakpoints.
6 (gdb-assembler-custom): Be careful not to match other addresses.
7
12008-04-29 Jason Rumney <jasonr@gnu.org> 82008-04-29 Jason Rumney <jasonr@gnu.org>
2 9
3 * battery.el (battery-status-function): Use w32-battery-status 10 * battery.el (battery-status-function): Use w32-battery-status
diff --git a/lisp/progmodes/gdb-ui.el b/lisp/progmodes/gdb-ui.el
index 63285802973..63d48fb9fde 100644
--- a/lisp/progmodes/gdb-ui.el
+++ b/lisp/progmodes/gdb-ui.el
@@ -1928,33 +1928,32 @@ static char *magick[] = {
1928 (with-current-buffer (gdb-get-buffer 'gdb-breakpoints-buffer) 1928 (with-current-buffer (gdb-get-buffer 'gdb-breakpoints-buffer)
1929 (save-excursion 1929 (save-excursion
1930 (let ((buffer-read-only nil)) 1930 (let ((buffer-read-only nil))
1931 (goto-char (point-min)) 1931 (goto-char (point-min))
1932 (while (< (point) (- (point-max) 1)) 1932 (while (< (point) (- (point-max) 1))
1933 (forward-line 1) 1933 (forward-line 1)
1934 (if (looking-at gdb-breakpoint-regexp) 1934 (if (looking-at gdb-breakpoint-regexp)
1935 (progn 1935 (progn
1936 (setq bptno (or (match-string 1) (match-string 2))) 1936 (setq bptno (or (match-string 1) (match-string 2)))
1937 (setq flag (char-after (match-beginning 3))) 1937 (setq flag (char-after (match-beginning 3)))
1938 (if (match-string 1) 1938 (if (match-string 1)
1939 (setq gdb-parent-bptno-enabled (eq flag ?y))) 1939 (setq gdb-parent-bptno-enabled (eq flag ?y)))
1940 (add-text-properties 1940 (add-text-properties
1941 (match-beginning 3) (match-end 3) 1941 (match-beginning 3) (match-end 3)
1942 (if (eq flag ?y) 1942 (if (eq flag ?y)
1943 '(face font-lock-warning-face) 1943 '(face font-lock-warning-face)
1944 '(face font-lock-type-face))) 1944 '(face font-lock-type-face)))
1945 (let ((bl (point)) 1945 (let ((bl (point))
1946 (el (line-end-position))) 1946 (el (line-end-position)))
1947 (if (re-search-forward " in \\(.*\\) at\\s-+" el t) 1947 (when (re-search-forward " in \\(.*\\) at" el t)
1948 (progn 1948 (add-text-properties
1949 (add-text-properties 1949 (match-beginning 1) (match-end 1)
1950 (match-beginning 1) (match-end 1) 1950 '(face font-lock-function-name-face)))
1951 '(face font-lock-function-name-face)) 1951 (if (re-search-forward ".*\\s-+\\(\\S-+\\):\\([0-9]+\\)$")
1952 (looking-at "\\(\\S-+\\):\\([0-9]+\\)")
1953 (let ((line (match-string 2)) 1952 (let ((line (match-string 2))
1954 (file (match-string 1))) 1953 (file (match-string 1)))
1955 (add-text-properties bl el 1954 (add-text-properties bl el
1956 '(mouse-face highlight 1955 '(mouse-face highlight
1957 help-echo "mouse-2, RET: visit breakpoint")) 1956 help-echo "mouse-2, RET: visit breakpoint"))
1958 (unless (file-exists-p file) 1957 (unless (file-exists-p file)
1959 (setq file (cdr (assoc bptno gdb-location-alist)))) 1958 (setq file (cdr (assoc bptno gdb-location-alist))))
1960 (if (and file 1959 (if (and file
@@ -1975,20 +1974,20 @@ static char *magick[] = {
1975 (gdb-enqueue-input 1974 (gdb-enqueue-input
1976 (list (concat gdb-server-prefix "info source\n") 1975 (list (concat gdb-server-prefix "info source\n")
1977 `(lambda () (gdb-get-location 1976 `(lambda () (gdb-get-location
1978 ,bptno ,line ,flag))))))) 1977 ,bptno ,line ,flag))))))
1979 (if (re-search-forward 1978 (if (re-search-forward
1980 "<\\(\\(\\sw\\|[_.]\\)+\\)\\(\\+[0-9]+\\)?>" 1979 "<\\(\\(\\sw\\|[_.]\\)+\\)\\(\\+[0-9]+\\)?>"
1981 el t) 1980 el t)
1981 (add-text-properties
1982 (match-beginning 1) (match-end 1)
1983 '(face font-lock-function-name-face))
1984 (end-of-line)
1985 (re-search-backward "\\s-\\(\\S-*\\)"
1986 bl t)
1982 (add-text-properties 1987 (add-text-properties
1983 (match-beginning 1) (match-end 1) 1988 (match-beginning 1) (match-end 1)
1984 '(face font-lock-function-name-face)) 1989 '(face font-lock-variable-name-face)))))))
1985 (end-of-line) 1990 (end-of-line))))))
1986 (re-search-backward "\\s-\\(\\S-*\\)"
1987 bl t)
1988 (add-text-properties
1989 (match-beginning 1) (match-end 1)
1990 '(face font-lock-variable-name-face)))))))
1991 (end-of-line))))))
1992 (if (gdb-get-buffer 'gdb-assembler-buffer) (gdb-assembler-custom)) 1991 (if (gdb-get-buffer 'gdb-assembler-buffer) (gdb-assembler-custom))
1993 1992
1994 ;; Breakpoints buffer is always present. Hack to just update 1993 ;; Breakpoints buffer is always present. Hack to just update
@@ -2201,7 +2200,7 @@ corresponding to the mode line clicked."
2201 (if event (posn-set-point (event-end event))) 2200 (if event (posn-set-point (event-end event)))
2202 (save-excursion 2201 (save-excursion
2203 (beginning-of-line 1) 2202 (beginning-of-line 1)
2204 (if (looking-at "\\([0-9]+\\.?[0-9]*\\) .+ in .+ at\\s-+\\(\\S-+\\):\\([0-9]+\\)") 2203 (if (looking-at "\\([0-9]+\\.?[0-9]*\\) .*\\s-+\\(\\S-+\\):\\([0-9]+\\)$")
2205 (let ((bptno (match-string 1)) 2204 (let ((bptno (match-string 1))
2206 (file (match-string 2)) 2205 (file (match-string 2))
2207 (line (match-string 3))) 2206 (line (match-string 3)))
@@ -2218,7 +2217,7 @@ corresponding to the mode line clicked."
2218 (error "No location specified.")))) 2217 (error "No location specified."))))
2219 2218
2220 2219
2221;; Frames buffer. This displays a perpetually correct bactracktrace 2220;; Frames buffer. This displays a perpetually correct backtrace
2222;; (from the command `where'). 2221;; (from the command `where').
2223;; 2222;;
2224;; Alas, if your stack is deep, it is costly. 2223;; Alas, if your stack is deep, it is costly.
@@ -3475,7 +3474,7 @@ BUFFER nil or omitted means use the current buffer."
3475 (with-current-buffer buffer 3474 (with-current-buffer buffer
3476 (save-excursion 3475 (save-excursion
3477 (goto-char (point-min)) 3476 (goto-char (point-min))
3478 (if (search-forward address nil t) 3477 (if (re-search-forward (concat "^0x0*" address) nil t)
3479 (gdb-put-breakpoint-icon (eq flag ?y) bptno))))))) 3478 (gdb-put-breakpoint-icon (eq flag ?y) bptno)))))))
3480 (if (not (equal gdb-pc-address "main")) 3479 (if (not (equal gdb-pc-address "main"))
3481 (with-current-buffer buffer 3480 (with-current-buffer buffer