diff options
author | Karl Heuer <kwzh@gnu.org> | 1994-11-16 01:26:39 +0000 |
---|---|---|
committer | Karl Heuer <kwzh@gnu.org> | 1994-11-16 01:26:39 +0000 |
commit | 3f124f484d9fcdad7222de9b0951778a712e375b (patch) | |
tree | fac17d41d159b769c0b1328272583d232bb3373e /src/xselect.c | |
parent | 1704906628cc7f8a611e11a38a7b556b7f31488c (diff) | |
download | emacs-3f124f484d9fcdad7222de9b0951778a712e375b.tar.gz |
(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.
Diffstat (limited to 'src/xselect.c')
-rw-r--r-- | src/xselect.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/xselect.c b/src/xselect.c index c02d70c35d8..90ccdbbfde4 100644 --- a/src/xselect.c +++ b/src/xselect.c @@ -887,7 +887,9 @@ static Lisp_Object 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 @@ wait_for_property_change (location) 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); |