changeset 33952:ca22422634ac

(text_read_only): New function. (verify_interval_modification): Use it instead of signaling `text-read-only'. This makes it easier to catch this error with a breakpoint.:
author Gerd Moellmann <gerd@gnu.org>
date Tue, 28 Nov 2000 11:49:05 +0000
parents ac7551c36926
children 80c90f83320d
files src/textprop.c
diffstat 1 files changed, 18 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/src/textprop.c	Tue Nov 28 11:38:55 2000 +0000
+++ b/src/textprop.c	Tue Nov 28 11:49:05 2000 +0000
@@ -75,6 +75,18 @@
    to be run later by report_interval_modification.  */
 Lisp_Object interval_insert_behind_hooks;
 Lisp_Object interval_insert_in_front_hooks;
+
+
+/* Signal a `text-read-only' error.  This function makes it easier
+   to capture that error in GDB by putting a breakpoint on it.  */
+
+static void
+text_read_only ()
+{
+  Fsignal (Qtext_read_only, Qnil);
+}
+
+
 
 /* Extract the interval at the position pointed to by BEGIN from
    OBJECT, a string or buffer.  Additionally, check that the positions
@@ -1784,7 +1796,7 @@
   /* For an insert operation, check the two chars around the position.  */
   if (start == end)
     {
-      INTERVAL prev;
+      INTERVAL prev = NULL;
       Lisp_Object before, after;
 
       /* Set I to the interval containing the char after START,
@@ -1828,7 +1840,7 @@
 		      if (TMEM (Qread_only, tem)
 			  || (NILP (Fplist_get (i->plist, Qread_only))
 			      && TMEM (Qcategory, tem)))
-			Fsignal (Qtext_read_only, Qnil);
+			text_read_only ();
 		    }
 		}
 
@@ -1848,7 +1860,7 @@
 		      if (! TMEM (Qread_only, tem)
 			  && (! NILP (Fplist_get (prev->plist,Qread_only))
 			      || ! TMEM (Qcategory, tem)))
-			Fsignal (Qtext_read_only, Qnil);
+			text_read_only ();
 		    }
 		}
 	    }
@@ -1867,13 +1879,13 @@
 		  if (TMEM (Qread_only, tem)
 		      || (NILP (Fplist_get (i->plist, Qread_only))
 			  && TMEM (Qcategory, tem)))
-		    Fsignal (Qtext_read_only, Qnil);
+		    text_read_only ();
 
 		  tem = textget (prev->plist, Qrear_nonsticky);
 		  if (! TMEM (Qread_only, tem)
 		      && (! NILP (Fplist_get (prev->plist, Qread_only))
 			  || ! TMEM (Qcategory, tem)))
-		    Fsignal (Qtext_read_only, Qnil);
+		    text_read_only ();
 		}
 	    }
 	}
@@ -1895,7 +1907,7 @@
       do
 	{
 	  if (! INTERVAL_WRITABLE_P (i))
-	    Fsignal (Qtext_read_only, Qnil);
+	    text_read_only ();
 
 	  mod_hooks = textget (i->plist, Qmodification_hooks);
 	  if (! NILP (mod_hooks) && ! EQ (mod_hooks, prev_mod_hooks))