summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNeil Jerram <neil@ossau.uklinux.net>2009-08-28 00:29:04 +0100
committerNeil Jerram <neil@ossau.uklinux.net>2009-08-28 00:29:04 +0100
commita27173cf78a03758317dfe5571380ed3347fa242 (patch)
tree689a9d6495bdd318814d1ba5e567fda8dc6db29d
parent1505848425bf149f864ea106bce71447f739012d (diff)
downloadguile-a27173cf78a03758317dfe5571380ed3347fa242.tar.gz
Fix GDS utility client startup
* emacs/gds-scheme.el (gds-start-utility-guile): Use buffer-local variable gds-client instead of client, as client is actually unbound when the process-filter lambda runs. (i.e. This isn't Scheme code!)
-rwxr-xr-xemacs/gds-scheme.el16
1 files changed, 8 insertions, 8 deletions
diff --git a/emacs/gds-scheme.el b/emacs/gds-scheme.el
index 798b10702..bb605c364 100755
--- a/emacs/gds-scheme.el
+++ b/emacs/gds-scheme.el
@@ -206,8 +206,7 @@ Emacs to display an error or trap so that the user can debug it."
"-q"
"--debug"
"-c"
- code))
- (client nil))
+ code)))
;; Note that this process can be killed automatically on Emacs
;; exit.
(process-kill-without-query proc)
@@ -217,17 +216,18 @@ Emacs to display an error or trap so that the user can debug it."
(if (process-buffer proc)
(with-current-buffer (process-buffer proc)
(insert string)
- (or client
+ (or gds-client
(save-excursion
(goto-char (point-min))
- (setq client (condition-case nil
- (read (current-buffer))
- (error nil)))))))))
+ (setq gds-client
+ (condition-case nil
+ (read (current-buffer))
+ (error nil)))))))))
;; Accept output from the new process until we have its number.
- (while (not client)
+ (while (not (with-current-buffer (process-buffer proc) gds-client))
(accept-process-output proc))
;; Return the new process's client number.
- client))
+ (with-current-buffer (process-buffer proc) gds-client)))
;;;; Evaluating code.