changeset 9960:d7735c829d73

(wait_for_property_change): Encode location as a cons of two integers instead of lying about the type. (wait_for_property_change_unwind): Decode it likewise.
author Karl Heuer <kwzh@gnu.org>
date Wed, 16 Nov 1994 01:26:39 +0000
parents c942c7e6ebbd
children 5ecf054a8c8f
files src/xselect.c
diffstat 1 files changed, 6 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/xselect.c	Wed Nov 16 01:14:23 1994 +0000
+++ b/src/xselect.c	Wed Nov 16 01:26:39 1994 +0000
@@ -887,7 +887,9 @@
 wait_for_property_change_unwind (identifierval)
      Lisp_Object identifierval;
 {
-  unexpect_property_change (XPNTR (identifierval));
+  unexpect_property_change ((struct prop_location *)
+			    (XFASTINT (XCONS (identifierval)->car) << 16
+			     | XFASTINT (XCONS (identifierval)->cdr)));
 }
 
 /* Actually wait for a property change.
@@ -901,7 +903,9 @@
   int count = specpdl_ptr - specpdl;
   Lisp_Object tem;
 
-  XSETCONS (tem, location);
+  tem = Fcons (Qnil, Qnil);
+  XSETFASTINT (XCONS (tem)->car, (EMACS_UINT)location >> 16);
+  XSETFASTINT (XCONS (tem)->cdr, (EMACS_UINT)location & 0xffff);
 
   /* Make sure to do unexpect_property_change if we quit or err.  */
   record_unwind_protect (wait_for_property_change_unwind, tem);