diff src/select.c @ 5468:a9094f28f9a9

Merge with trunk.
author Mats Lidell <matsl@xemacs.org>
date Wed, 19 Jan 2011 22:35:23 +0100
parents 308d34e9f07d 8608eadee6ba
children 56144c8593a8
line wrap: on
line diff
--- a/src/select.c	Fri Jan 14 23:32:08 2011 +0100
+++ b/src/select.c	Wed Jan 19 22:35:23 2011 +0100
@@ -181,19 +181,8 @@
       if (!NILP (local_selection_data))
 	{
 	  owned_p = 1;
-	  /* Don't use Fdelq() as that may QUIT;. */
-	  if (EQ (local_selection_data, Fcar (Vselection_alist)))
-	    Vselection_alist = Fcdr (Vselection_alist);
-	  else
-	    {
-	      Lisp_Object rest;
-	      for (rest = Vselection_alist; !NILP (rest); rest = Fcdr (rest))
-		if (EQ (local_selection_data, Fcar (XCDR (rest))))
-		  {
-		    XCDR (rest) = Fcdr (XCDR (rest));
-		    break;
-		  }
-	    }
+	  Vselection_alist
+		  = delq_no_quit (local_selection_data, Vselection_alist);
 	}
     }
   else
@@ -410,21 +399,8 @@
   /* Well, we already believe that we don't own it, so that's just fine. */
   if (NILP (local_selection_data)) return;
 
-  /* Otherwise, we're really honest and truly being told to drop it.
-     Don't use Fdelq() as that may QUIT;.
-   */
-  if (EQ (local_selection_data, Fcar (Vselection_alist)))
-    Vselection_alist = Fcdr (Vselection_alist);
-  else
-    {
-      Lisp_Object rest;
-      for (rest = Vselection_alist; !NILP (rest); rest = Fcdr (rest))
-	if (EQ (local_selection_data, Fcar (XCDR (rest))))
-	  {
-	    XCDR (rest) = Fcdr (XCDR (rest));
-	    break;
-	  }
-    }
+  /* Otherwise, we're really honest and truly being told to drop it. */
+  Vselection_alist = delq_no_quit (local_selection_data, Vselection_alist);
 
   /* Let random lisp code notice that the selection has been stolen.
    */