From: Richard M. Stallman Date: Sat, 22 Jan 2000 02:57:37 +0000 (+0000) Subject: (set_internal): Further fix in same criterion. X-Git-Tag: emacs-pretest-21.0.90~5294 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=1aa7a2c7dc3c6fe9c6acf5f324c304af9ea9b425;p=emacs.git (set_internal): Further fix in same criterion. --- diff --git a/src/data.c b/src/data.c index 3f5fec2349b..eb29de20dbd 100644 --- a/src/data.c +++ b/src/data.c @@ -1043,14 +1043,12 @@ set_internal (symbol, newval, buf, bindflag) currently cached, or if it's a Lisp_Buffer_Local_Value and we're looking at the default value, the cache is invalid; we need to write it out, and find the new CURRENT-ALIST-ELEMENT. */ - if ((XBUFFER_LOCAL_VALUE (valcontents)->found_for_buffer - && (buf != XBUFFER (XBUFFER_LOCAL_VALUE (valcontents)->buffer) - || (BUFFER_LOCAL_VALUEP (valcontents) - && EQ (XCAR (current_alist_element), - current_alist_element)))) - || - (XBUFFER_LOCAL_VALUE (valcontents)->found_for_frame - && !EQ (selected_frame, XBUFFER_LOCAL_VALUE (valcontents)->frame))) + if (XBUFFER_LOCAL_VALUE (valcontents)->found_for_frame + ? !EQ (selected_frame, XBUFFER_LOCAL_VALUE (valcontents)->frame) + : (buf != XBUFFER (XBUFFER_LOCAL_VALUE (valcontents)->buffer) + || (BUFFER_LOCAL_VALUEP (valcontents) + && EQ (XCAR (current_alist_element), + current_alist_element)))) { /* Write out the cached value for the old buffer; copy it back to its alist element. This works if the current