]> git.eshelyaron.com Git - emacs.git/commitdiff
(handle_single_display_prop): Don't try to set PT if
authorGerd Moellmann <gerd@gnu.org>
Thu, 11 May 2000 09:31:42 +0000 (09:31 +0000)
committerGerd Moellmann <gerd@gnu.org>
Thu, 11 May 2000 09:31:42 +0000 (09:31 +0000)
we're interating over a string.

src/xdisp.c

index f377a9b61d6019a637f9ac58e64d7cc732f35676..46bf091230f12be371479deb5af1c4b15596c803 100644 (file)
@@ -2314,16 +2314,22 @@ handle_single_display_prop (it, prop, object, position)
       struct gcpro gcpro1;
       struct text_pos end_pos, pt;
       
-      end_pos = display_prop_end (it, object, *position);
       GCPRO1 (form);
+      end_pos = display_prop_end (it, object, *position);
 
       /* Temporarily set point to the end position, and then evaluate
         the form.  This makes `(eolp)' work as FORM.  */
-      CHARPOS (pt) = PT;
-      BYTEPOS (pt) = PT_BYTE;
-      TEMP_SET_PT_BOTH (CHARPOS (end_pos), BYTEPOS (end_pos));
+      if (BUFFERP (object))
+       {
+         CHARPOS (pt) = PT;
+         BYTEPOS (pt) = PT_BYTE;
+         TEMP_SET_PT_BOTH (CHARPOS (end_pos), BYTEPOS (end_pos));
+       }
+      
       form = eval_form (form);
-      TEMP_SET_PT_BOTH (CHARPOS (pt), BYTEPOS (pt));
+      
+      if (BUFFERP (object))
+       TEMP_SET_PT_BOTH (CHARPOS (pt), BYTEPOS (pt));
       UNGCPRO;  
     }