Mercurial > emacs
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);