[5133] in testers
Re: eolcr breaks under emacs 21
daemon@ATHENA.MIT.EDU (Arun A Tharuvai)
Tue Apr 23 13:22:58 2002
Date: Tue, 23 Apr 2002 13:22:56 -0400
From: Arun A Tharuvai <aatharuv@MIT.EDU>
To: eolcdev@MIT.EDU
Cc: y@MIT.EDU, testers@MIT.EDU, aatharuv@MIT.EDU
Message-ID: <20020423172256.GD1675@dorm.mit.edu>
Mime-Version: 1.0
Content-Type: multipart/mixed; boundary="/WwmFnJnmDyWGHa4"
Content-Disposition: inline
In-Reply-To: <20020423163134.GC1675@dorm.mit.edu>
--/WwmFnJnmDyWGHa4
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
My last suggested bugfix was incorrect (since olcr-uid was expected to
return an integer in several locations).
Attached is a patch which I've tested and works on both emacs20 and
emacs21.
Arun
On Tue, Apr 23, 2002 at 12:31:34PM -0400, Arun A Tharuvai wrote:
> I debugged the problem a bit more, and it appears to be caused by a
> change in behavior in the concat function between emacs20 and emacs21.
>
> olcr-uid returns the number 8106, and not a string "8106". In emacs
> 20, the following code
>
> (concat "/tmp/olcr-replay-" "paco" "0" "." 8106)
> returns
> "/tmp/olcr-replay-brandonw0.8106"
>
> whereas the same code returns the following error in emacs 21:
>
> Debugger entered--Lisp error: (wrong-type-argument sequencep 8106)
> concat("/tmp/olcr-replay-" "brandonw" "0" "." 8106)
> eval((concat "/tmp/olcr-replay-" "brandonw" "0" "." 8106))
> eval-last-sexp-1(nil)
> eval-last-sexp(nil)
> call-interactively(eval-last-sexp)
>
>
> Quoting it seems to work in both emacs20 and emacs21.
>
> Changing the following in definitions.el
>
> (defvar olcr-uid (user-uid)
> "The UID of the consultant running OLCR.")
>
> to
>
> (defvar olcr-uid (concat (user-uid))
> "The UID of the consultant running OLCR.")
>
> _should_ work, and I'm currently testing this out (making changes to a
> few paths in the elisp), to make sure that this actually works.
>
>
> Arun
>
> On Mon, Apr 22, 2002 at 12:38:37PM -0400, chad wrote:
> >
> > M-x toggle-debug-on-error RET and send the stack trace. (in the emacs
> > debugger window, `c' continues, `d' steps, and `q' quits)
> >
> >
>
> eolcdev: Here was my initial email which should have been sent to you.
>
> [5131] daemon@ATHENA.MIT.EDU (Arun A Tharuvai) testers 04/22/02 12:34 (39 lines)
> Subject: eolcr breaks under emacs 21
> Date: Mon, 22 Apr 2002 12:34:27 -0400
> From: Arun A Tharuvai <aatharuv@MIT.EDU>
> To: testers@MIT.EDU
> Cc: aatharuv@MIT.EDU
> Message-ID: <20020422163427.GA1675@dorm.mit.edu>
> Mime-Version: 1.0
> Content-Type: text/plain; charset=us-ascii
> Content-Disposition: inline
>
> Emacs olcr doesn't work under emacs 21. More specifically, olcr-list
> worksm but whenever I try to replay a conversation, I get the error:
>
> Wrong type argument: sequencep, 8106
>
> (8106 is my Athena uid)
>
> Here's some related spew from my *Messages* buffer.
>
> olcr-execute: Wrong type argument: sequencep, 8106
> Finished updating user list. Type ? to get help on using OLCR.
> Reading user conversation...
> olcr-make-replay-filename: Wrong type argument: sequencep, 8106
> Reading user conversation...
> olcr-make-replay-filename: Wrong type argument: sequencep, 8106
> Reading user conversation...
> olcr-make-replay-filename: Wrong type argument: sequencep, 8106
> Reading user conversation...
> olcr-make-replay-filename: Wrong type argument: sequencep, 8106
> Reading user conversation...
> olcr-make-replay-filename: Wrong type argument: sequencep, 8106
> Reading user conversation...
> olcr-make-replay-filename: Wrong type argument: sequencep, 8106
> Reading user conversation...
> olcr-make-replay-filename: Wrong type argument: sequencep, 8106
> Reading user conversation...
> olcr-make-replay-filename: Wrong type argument: sequencep, 8106
>
> Arun
>
> --
--
--/WwmFnJnmDyWGHa4
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="eolcr.patch"
Apr 23 13:18 2002 diff -url /mit/eolcdev/Emacs19/eolcr/commands.el eolcr/eolcr/commands.el Page 1
--- /mit/eolcdev/Emacs19/eolcr/commands.el Thu Aug 3 18:15:07 1995
+++ eolcr/eolcr/commands.el Tue Apr 23 13:04:45 2002
@@ -16,10 +16,10 @@
nil 'olcr-motd-done
"(OLCR: Finished getting OLC motd. Type \\[olcr-pop-unseen-buffer] to see results.)"
arg olcr-path nil "-server" olcr-server
- "motd" "-f" (concat "/tmp/olcr-motd." olcr-uid)))
+ "motd" "-f" (concat "/tmp/olcr-motd." (number-to-string olcr-uid))))
(defun olcr-motd-done (buffer)
- (let ((file (concat "/tmp/olcr-motd." olcr-uid))
+ (let ((file (concat "/tmp/olcr-motd." (number-to-string olcr-uid)))
parent-buffer error)
(save-excursion
(set-buffer buffer)
@@ -210,7 +210,7 @@
olcr-temp-userinstance userinstance
olcr-temp-new-window (if olcr-display-temporary-buffers-in-other-window
(not new-window) new-window)
- olcr-temp-other-args (format "/tmp/olcr-unseen-msgs-%s%s.%s"
+ olcr-temp-other-args (format "/tmp/olcr-unseen-msgs-%s%s.%d"
username userinstance olcr-uid)
olcr-temp-parent-buffer (window-buffer))
(set-process-sentinel
Apr 23 13:18 2002 diff -url /mit/eolcdev/Emacs19/eolcr/definitions.el eolcr/eolcr/definitions.el Page 1
--- /mit/eolcdev/Emacs19/eolcr/definitions.el Wed Apr 10 15:21:24 2002
+++ eolcr/eolcr/definitions.el Tue Apr 23 12:59:35 2002
@@ -792,7 +792,7 @@
on duty to OLC, elements put in reverse order from `olcr-signed-on-levels'.")
(defvar olcr-uid (user-uid)
- "The UID of the consultant running OLCR.")
+ "The UID of the consultant running OLCR-21.")
(defvar olcr-input-log nil
"List used to check how long olcr-input commands take.")
Apr 23 13:18 2002 diff -url /mit/eolcdev/Emacs19/eolcr/misc.el eolcr/eolcr/misc.el Page 1
--- /mit/eolcdev/Emacs19/eolcr/misc.el Fri Feb 13 17:36:22 1998
+++ eolcr/eolcr/misc.el Tue Apr 23 13:05:38 2002
@@ -686,7 +686,7 @@
"Remove all temporary files created by OLCR."
(interactive)
(start-process "olcr-flush-temp" nil olcr-flush-temp-path
- (concat "/tmp/olcr-*." olcr-uid)))
+ (concat "/tmp/olcr-*." (number-to-string olcr-uid))))
(defun olcr-get-on-duty-instance ()
(set-process-sentinel
Apr 23 13:18 2002 diff -url /mit/eolcdev/Emacs19/eolcr/olc-commands.el eolcr/eolcr/olc-commands.el Page 1
--- /mit/eolcdev/Emacs19/eolcr/olc-commands.el Thu Feb 25 10:45:36 1999
+++ eolcr/eolcr/olc-commands.el Tue Apr 23 13:06:02 2002
@@ -37,7 +37,7 @@
(name (or (olcr-get-user-real-name user-buffer) ""))
(keymap (copy-keymap olcr-input-mode-map))
(parent-buffer (current-buffer))
- (file (format "/tmp/olcr-mail-%s%s.%s" username userinstance olcr-uid)))
+ (file (format "/tmp/olcr-mail-%s%s.%d" username userinstance olcr-uid)))
(Unless (string-equal "" username)
(When olcr-display-input-buffers-in-other-window
(setq new-window (not new-window)))
Apr 23 13:18 2002 diff -url /mit/eolcdev/Emacs19/eolcr/replay-mode.el eolcr/eolcr/replay-mode.el Page 1
--- /mit/eolcdev/Emacs19/eolcr/replay-mode.el Mon Sep 11 16:55:39 1995
+++ eolcr/eolcr/replay-mode.el Tue Apr 23 13:06:53 2002
@@ -192,7 +192,7 @@
(set-buffer-modified-p (buffer-modified-p))))))
(defun olcr-make-replay-filename (username userinstance)
- (concat "/tmp/olcr-replay-" username userinstance "." olcr-uid))
+ (concat "/tmp/olcr-replay-" username userinstance "." (number-to-string olcr-uid)))
(defun olcr-remove-replay-files (user)
(let ((file (olcr-make-replay-filename (olcr-user-username user)
--/WwmFnJnmDyWGHa4--