{
/* Output to echo area. */
ptrdiff_t nbytes = SBYTES (string);
- char *buffer;
/* Copy the string contents so that relocation of STRING by
GC does not cause trouble. */
USE_SAFE_ALLOCA;
-
- SAFE_ALLOCA (buffer, char *, nbytes);
+ char *buffer = SAFE_ALLOCA (nbytes);
memcpy (buffer, SDATA (string), nbytes);
- strout (buffer, chars, SBYTES (string), printcharfun);
+ strout (buffer, chars, nbytes, printcharfun);
SAFE_FREE ();
}
if (!NILP (caller) && SYMBOLP (caller))
{
Lisp_Object cname = SYMBOL_NAME (caller);
- char *name;
+ ptrdiff_t cnamelen = SBYTES (cname);
USE_SAFE_ALLOCA;
- SAFE_ALLOCA (name, char *, SBYTES (cname));
- memcpy (name, SDATA (cname), SBYTES (cname));
- message_dolog (name, SBYTES (cname), 0, 0);
+ char *name = SAFE_ALLOCA (cnamelen);
+ memcpy (name, SDATA (cname), cnamelen);
+ message_dolog (name, cnamelen, 0, 0);
message_dolog (": ", 2, 0, 0);
SAFE_FREE ();
}
if (escapeflag)
{
strout ("#<process ", -1, -1, printcharfun);
- print_string (XPROCESS (obj)->name, printcharfun);
+ print_string (PGET (XPROCESS (obj), name), printcharfun);
PRINTCHAR ('>');
}
else
- print_string (XPROCESS (obj)->name, printcharfun);
+ print_string (PGET (XPROCESS (obj), name), printcharfun);
}
else if (BOOL_VECTOR_P (obj))
{
strout ("#<window ", -1, -1, printcharfun);
len = sprintf (buf, "%d", XWINDOW (obj)->sequence_number);
strout (buf, len, len, printcharfun);
- if (!NILP (WVAR (XWINDOW (obj), buffer)))
+ if (!NILP (XWINDOW (obj)->buffer))
{
strout (" on ", -1, -1, printcharfun);
- print_string (BVAR (XBUFFER (WVAR (XWINDOW (obj), buffer)), name),
+ print_string (BVAR (XBUFFER (XWINDOW (obj)->buffer), name),
printcharfun);
}
PRINTCHAR ('>');
else if (FRAMEP (obj))
{
int len;
- Lisp_Object frame_name = FVAR (XFRAME (obj), name);
+ Lisp_Object frame_name = XFRAME (obj)->name;
strout ((FRAME_LIVE_P (XFRAME (obj))
? "#<frame " : "#<dead frame "),