Mercurial > emacs
changeset 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 | 5780d53d7894 |
children | 2e5f838e6ca7 |
files | src/fileio.c |
diffstat | 1 files changed, 6 insertions(+), 2 deletions(-) [+] |
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); }