Mercurial > emacs
diff src/fileio.c @ 65466:1fdd6c36f42c
(auto_save_error): Pass copy of lisp string to message2.
author | Kim F. Storm <storm@cua.dk> |
---|---|
date | Mon, 12 Sep 2005 13:42:49 +0000 |
parents | a0d1312ede66 |
children | 85da96d43f19 94f174e5569d |
line wrap: on
line diff
--- a/src/fileio.c Mon Sep 12 13:42:40 2005 +0000 +++ b/src/fileio.c Mon Sep 12 13:42:49 2005 +0000 @@ -5769,6 +5769,8 @@ Lisp_Object args[3], msg; int i, nbytes; struct gcpro gcpro1; + char *msgbuf; + USE_SAFE_ALLOCA; ring_bell (); @@ -5778,13 +5780,15 @@ msg = Fformat (3, args); GCPRO1 (msg); nbytes = SBYTES (msg); + SAFE_ALLOCA (msgbuf, char *, nbytes); + bcopy (SDATA (msg), msgbuf, nbytes); for (i = 0; i < 3; ++i) { if (i == 0) - message2 (SDATA (msg), nbytes, STRING_MULTIBYTE (msg)); + message2 (msgbuf, nbytes, STRING_MULTIBYTE (msg)); else - message2_nolog (SDATA (msg), nbytes, STRING_MULTIBYTE (msg)); + message2_nolog (msgbuf, nbytes, STRING_MULTIBYTE (msg)); Fsleep_for (make_number (1), Qnil); }