diff src/editfns.c @ 28470:93996c44b23a

* editfns.c (text_property_stickiness, Fmessage_or_box): Use NILP to test Lisp_Object boolean value. (Fformat): Use a temporary variable to avoid ENABLE_CHECKING problems reading from and changing the same lisp value in an XSETSTRING call.
author Ken Raeburn <raeburn@raeburn.org>
date Sun, 02 Apr 2000 02:31:07 +0000
parents 7ae3851c0a19
children 19535c629080
line wrap: on
line diff
--- a/src/editfns.c	Sun Apr 02 01:52:58 2000 +0000
+++ b/src/editfns.c	Sun Apr 02 02:31:07 2000 +0000
@@ -315,7 +315,7 @@
 
       if (EQ (rear_non_sticky, Qnil)
 	  || (CONSP (rear_non_sticky)
-	      && !Fmemq (prop, rear_non_sticky)))
+	      && NILP (Fmemq (prop, rear_non_sticky))))
 	/* PROP is not rear-non-sticky, and since this takes precedence over
 	   any front-stickiness, PROP is inherited from before.  */
 	return -1;
@@ -326,7 +326,7 @@
 
   if (EQ (front_sticky, Qt)
       || (CONSP (front_sticky)
-	  && Fmemq (prop, front_sticky)))
+	  && !NILP (Fmemq (prop, front_sticky))))
     /* PROP is inherited from after.  */
     return 1;
 
@@ -2781,7 +2781,7 @@
 {
 #ifdef HAVE_MENUS
   if ((NILP (last_nonmenu_event) || CONSP (last_nonmenu_event))
-      && NILP (use_dialog_box))
+      && use_dialog_box)
     return Fmessage_box (nargs, args);
 #endif
   return Fmessage (nargs, args);
@@ -2949,7 +2949,10 @@
 	  }
 	else if (SYMBOLP (args[n]))
 	  {
-	    XSETSTRING (args[n], XSYMBOL (args[n])->name);
+	    /* Use a temp var to avoid problems when ENABLE_CHECKING
+	       is turned on.  */
+	    struct Lisp_String *t = XSYMBOL (args[n])->name;
+	    XSETSTRING (args[n], t);
 	    if (STRING_MULTIBYTE (args[n]) && ! multibyte)
 	      {
 		multibyte = 1;