summaryrefslogtreecommitdiff
path: root/chess-engine.el
diff options
context:
space:
mode:
authorJohn Wiegley <johnw@newartisans.com>2002-04-14 19:52:56 +0000
committerJohn Wiegley <johnw@newartisans.com>2002-04-14 19:52:56 +0000
commitd5e9f0a3c531104936728c5a599dde77c67319b0 (patch)
tree0868b9db313b9f15ddd9e74050171237cd8b889f /chess-engine.el
parentd881274ead232567cf80f0057031b05f5b0551bc (diff)
*** no comment ***
Diffstat (limited to 'chess-engine.el')
-rw-r--r--chess-engine.el29
1 files changed, 15 insertions, 14 deletions
diff --git a/chess-engine.el b/chess-engine.el
index 3f2a8a0..d8299fa 100644
--- a/chess-engine.el
+++ b/chess-engine.el
@@ -264,20 +264,21 @@
(handler (intern-soft (concat (symbol-name module) "-handler"))))
(with-current-buffer (generate-new-buffer " *chess-engine*")
(let ((proc (apply handler 'initialize handler-ctor-args)))
- (setq chess-engine-regexp-alist (symbol-value regexp-alist)
- chess-engine-event-handler handler
- chess-engine-response-handler
- (or response-handler 'chess-engine-default-handler))
- (chess-engine-set-game* nil game t)
- (when (processp proc)
- (unless (memq (process-status proc) '(run open))
- (chess-error 'failed-engine-start))
- (setq chess-engine-process proc)
- (set-process-buffer proc (current-buffer))
- (set-process-filter proc 'chess-engine-filter))
- (setq chess-engine-current-marker (point-marker)))
- (add-hook 'kill-buffer-hook 'chess-engine-on-kill nil t)
- (current-buffer))))
+ (when proc ;must be a process or t
+ (setq chess-engine-regexp-alist (symbol-value regexp-alist)
+ chess-engine-event-handler handler
+ chess-engine-response-handler
+ (or response-handler 'chess-engine-default-handler))
+ (chess-engine-set-game* nil game t)
+ (when (processp proc)
+ (unless (memq (process-status proc) '(run open))
+ (chess-error 'failed-engine-start))
+ (setq chess-engine-process proc)
+ (set-process-buffer proc (current-buffer))
+ (set-process-filter proc 'chess-engine-filter))
+ (setq chess-engine-current-marker (point-marker))
+ (add-hook 'kill-buffer-hook 'chess-engine-on-kill nil t)
+ (current-buffer))))))
(defun chess-engine-on-kill ()
"Function called when the buffer is killed."