(:kill-sent (send-message-one connection "play")
(setf phase :play-sent)))))
+(defmethod handle-data ((m init-mode) message)
+ (declare (ignorable message))
+ t)
+
(defmethod handle-exit ((m play-mode) message)
(declare (ignorable message))
(quit (connection m)))
(send-message-one c message)
(set-new-mode c mode))))))
+(defun read-no-eval (stream)
+ (let ((*read-eval* nil))
+ (read stream)))
+
(defmethod handle-prompt ((m play-mode) message)
(let* ((c (connection m)))
(with-input-from-string (s message)
- (let* ((minutes (read s)) ;;FIXME DANGEROUS
- (btus (read s)))
+ (let* ((minutes (read-no-eval s))
+ (btus (read-no-eval s)))
(empire-web:prompt (session c)
(format nil "[~a,~a]: " minutes btus))))
(send-next-line c)))
(error 'no-handler :mode mode :type type))))
line)
(sb-int:closed-stream-error () nil)
+ (sb-int:simple-stream-error () nil)
(end-of-file () nil)))
(defun raw-send-message (s message)