diff options
| author | Nick Roberts | 2005-11-24 20:45:50 +0000 |
|---|---|---|
| committer | Nick Roberts | 2005-11-24 20:45:50 +0000 |
| commit | f3220d3a39b4a04e15ea387166d804e3b61f1e2a (patch) | |
| tree | cf08282db830ef36a08db9b44f4ba37ca146afea | |
| parent | e5a690f115a4f8fa678314ab08f33497862ae704 (diff) | |
| download | emacs-f3220d3a39b4a04e15ea387166d804e3b61f1e2a.tar.gz emacs-f3220d3a39b4a04e15ea387166d804e3b61f1e2a.zip | |
(gdb-var-create-handler, gdb-var-list-children-handler):
Find values for all variable objects. gud-speedbar-buttons
decides whether to display them.
| -rw-r--r-- | lisp/progmodes/gdb-ui.el | 40 |
1 files changed, 17 insertions, 23 deletions
diff --git a/lisp/progmodes/gdb-ui.el b/lisp/progmodes/gdb-ui.el index 3010d3e6561..433252757f5 100644 --- a/lisp/progmodes/gdb-ui.el +++ b/lisp/progmodes/gdb-ui.el | |||
| @@ -532,19 +532,16 @@ With arg, use separate IO iff arg is positive." | |||
| 532 | (unless (string-equal | 532 | (unless (string-equal |
| 533 | speedbar-initial-expansion-list-name "GUD") | 533 | speedbar-initial-expansion-list-name "GUD") |
| 534 | (speedbar-change-initial-expansion-list "GUD")) | 534 | (speedbar-change-initial-expansion-list "GUD")) |
| 535 | (if (or (equal (nth 2 var) "0") | 535 | (gdb-enqueue-input |
| 536 | (and (equal (nth 2 var) "1") | 536 | (list |
| 537 | (string-match "char \\*$" (nth 3 var)))) | 537 | (if (eq (buffer-local-value 'gud-minor-mode gud-comint-buffer) |
| 538 | (gdb-enqueue-input | 538 | 'gdba) |
| 539 | (list | 539 | (concat "server interpreter mi \"-var-evaluate-expression " |
| 540 | (if (eq (buffer-local-value 'gud-minor-mode gud-comint-buffer) | 540 | (nth 1 var) "\"\n") |
| 541 | 'gdba) | 541 | (concat "-var-evaluate-expression " (nth 1 var) "\n")) |
| 542 | (concat "server interpreter mi \"-var-evaluate-expression " | 542 | `(lambda () (gdb-var-evaluate-expression-handler |
| 543 | (nth 1 var) "\"\n") | 543 | ,(nth 1 var) nil)))) |
| 544 | (concat "-var-evaluate-expression " (nth 1 var) "\n")) | 544 | (setq gdb-var-changed t)) |
| 545 | `(lambda () (gdb-var-evaluate-expression-handler | ||
| 546 | ,(nth 1 var) nil)))) | ||
| 547 | (setq gdb-var-changed t))) | ||
| 548 | (if (re-search-forward "Undefined command" nil t) | 545 | (if (re-search-forward "Undefined command" nil t) |
| 549 | (message-box "Watching expressions requires gdb 6.0 onwards") | 546 | (message-box "Watching expressions requires gdb 6.0 onwards") |
| 550 | (message "No symbol \"%s\" in current context." expr))))) | 547 | (message "No symbol \"%s\" in current context." expr))))) |
| @@ -593,16 +590,13 @@ type=\"\\(.*?\\)\"") | |||
| 593 | (if (string-equal (cadr var1) (cadr varchild)) | 590 | (if (string-equal (cadr var1) (cadr varchild)) |
| 594 | (throw 'child-already-watched nil))) | 591 | (throw 'child-already-watched nil))) |
| 595 | (push varchild var-list) | 592 | (push varchild var-list) |
| 596 | (if (or (equal (nth 2 varchild) "0") | 593 | (gdb-enqueue-input |
| 597 | (and (equal (nth 2 varchild) "1") | 594 | (list |
| 598 | (string-match "char \\*$" (nth 3 varchild)))) | 595 | (concat |
| 599 | (gdb-enqueue-input | 596 | "server interpreter mi \"-var-evaluate-expression " |
| 600 | (list | 597 | (nth 1 varchild) "\"\n") |
| 601 | (concat | 598 | `(lambda () (gdb-var-evaluate-expression-handler |
| 602 | "server interpreter mi \"-var-evaluate-expression " | 599 | ,(nth 1 varchild) nil))))))) |
| 603 | (nth 1 varchild) "\"\n") | ||
| 604 | `(lambda () (gdb-var-evaluate-expression-handler | ||
| 605 | ,(nth 1 varchild) nil)))))))) | ||
| 606 | (push var var-list))) | 600 | (push var var-list))) |
| 607 | (setq gdb-var-list (nreverse var-list)))))) | 601 | (setq gdb-var-list (nreverse var-list)))))) |
| 608 | 602 | ||