Drop WGET and revert read access to Lisp_Objects slots of struct window.
[bpt/emacs.git] / src / print.c
index 5effec7..ffa8a9b 100644 (file)
@@ -392,16 +392,14 @@ print_string (Lisp_Object string, Lisp_Object printcharfun)
        {
          /* 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 ();
        }
@@ -862,11 +860,11 @@ print_error_message (Lisp_Object data, Lisp_Object stream, const char *context,
   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 ();
     }
@@ -1699,11 +1697,11 @@ print_object (Lisp_Object obj, register Lisp_Object printcharfun, int escapeflag
          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))
        {
@@ -1775,10 +1773,10 @@ print_object (Lisp_Object obj, register Lisp_Object printcharfun, int escapeflag
          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 ('>');
@@ -1898,7 +1896,7 @@ print_object (Lisp_Object obj, register Lisp_Object printcharfun, int escapeflag
       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 "),