Mercurial > emacs
changeset 94959:d2b202fafd8c
Merge from emacs--rel--22
Revision: emacs@sv.gnu.org/emacs--devo--0--patch-1159
author | Miles Bader <miles@gnu.org> |
---|---|
date | Wed, 14 May 2008 04:28:51 +0000 |
parents | 2ad9b7089844 (current diff) 45c14bfc78c0 (diff) |
children | fd635b03dbe5 |
files | lisp/ChangeLog lisp/obsolete/fast-lock.el src/ChangeLog src/emacs.c src/syssignal.h |
diffstat | 5 files changed, 37 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ChangeLog Wed May 14 01:58:43 2008 +0000 +++ b/lisp/ChangeLog Wed May 14 04:28:51 2008 +0000 @@ -1,3 +1,9 @@ +2008-05-14 Simon Marshall <simon@gnu.org> + + * obsolete/fast-lock.el (fast-lock-cache-directories): Remove "." + from its default value and give it the risky-local-variable + property (CVE-2008-2142). + 2008-05-14 Kenichi Handa <handa@m17n.org> * language/korean.el ("Korean"): Set `iso639-language'
--- a/lisp/obsolete/fast-lock.el Wed May 14 01:58:43 2008 +0000 +++ b/lisp/obsolete/fast-lock.el Wed May 14 04:28:51 2008 +0000 @@ -270,7 +270,7 @@ (integer :tag "size"))))) :group 'fast-lock) -(defcustom fast-lock-cache-directories '("." "~/.emacs-flc") +(defcustom fast-lock-cache-directories '("~/.emacs-flc") ; - `internal', keep each file's Font Lock cache file in the same file. ; - `external', keep each file's Font Lock cache file in the same directory. "*Directories in which Font Lock cache files are saved and read. @@ -288,12 +288,15 @@ ((\"^/your/true/home/directory/\" . \".\") \"~/.emacs-flc\") would cause a file's current directory to be used if the file is under your -home directory hierarchy, or otherwise the absolute directory `~/.emacs-flc'." +home directory hierarchy, or otherwise the absolute directory `~/.emacs-flc'. +For security reasons, it is not advisable to use the file's current directory +to avoid the possibility of using the cache of another user." :type '(repeat (radio (directory :tag "directory") (cons :tag "Matching" (regexp :tag "regexp") (directory :tag "directory")))) :group 'fast-lock) +(put 'fast-lock-cache-directories 'risky-local-variable t) (defcustom fast-lock-save-events '(kill-buffer kill-emacs) "*Events under which caches will be saved.
--- a/src/ChangeLog Wed May 14 01:58:43 2008 +0000 +++ b/src/ChangeLog Wed May 14 04:28:51 2008 +0000 @@ -1,3 +1,13 @@ +2008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> + + * emacs.c (main_thread): Conditionalize on + FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD. + (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it. + + * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define. + (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on + FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD. + 2008-05-14 Kenichi Handa <handa@m17n.org> * coding.c (detect_coding_iso_2022): Ignore a coding category that
--- a/src/emacs.c Wed May 14 01:58:43 2008 +0000 +++ b/src/emacs.c Wed May 14 04:28:51 2008 +0000 @@ -355,10 +355,10 @@ void (*fatal_error_signal_hook) P_ ((void)); -#ifdef HAVE_GTK_AND_PTHREAD -/* When compiled with GTK and running under Gnome, multiple threads may be - created. Keep track of our main thread to make sure signals are delivered - to it (see syssignal.h). */ +#ifdef FORWARD_SIGNAL_TO_MAIN_THREAD +/* When compiled with GTK and running under Gnome, or Carbon under Mac + OS X, multiple threads may be created. Keep track of our main + thread to make sure signals are delivered to it (see syssignal.h). */ pthread_t main_thread; #endif @@ -1035,9 +1035,9 @@ # endif /* not SYNC_INPUT */ #endif /* not SYSTEM_MALLOC */ -#ifdef HAVE_GTK_AND_PTHREAD +#ifdef FORWARD_SIGNAL_TO_MAIN_THREAD main_thread = pthread_self (); -#endif /* HAVE_GTK_AND_PTHREAD */ +#endif /* FORWARD_SIGNAL_TO_MAIN_THREAD */ #if defined (MSDOS) || defined (WINDOWSNT) /* We do all file input/output as binary files. When we need to translate
--- a/src/syssignal.h Wed May 14 01:58:43 2008 +0000 +++ b/src/syssignal.h Wed May 14 04:28:51 2008 +0000 @@ -21,8 +21,14 @@ extern void init_signals P_ ((void)); -#ifdef HAVE_GTK_AND_PTHREAD +#if defined (HAVE_GTK_AND_PTHREAD) || (defined (HAVE_CARBON) && MAC_OS_X_VERSION_MAX_ALLOWED >= 1020) #include <pthread.h> +/* If defined, asynchronous signals delivered to a non-main thread are + forwarded to the main thread. */ +#define FORWARD_SIGNAL_TO_MAIN_THREAD +#endif + +#ifdef FORWARD_SIGNAL_TO_MAIN_THREAD extern pthread_t main_thread; #endif @@ -208,7 +214,7 @@ char *strsignal (); #endif -#ifdef HAVE_GTK_AND_PTHREAD +#ifdef FORWARD_SIGNAL_TO_MAIN_THREAD #define SIGNAL_THREAD_CHECK(signo) \ do { \ if (!pthread_equal (pthread_self (), main_thread)) \ @@ -227,8 +233,8 @@ } \ } while (0) -#else /* not HAVE_GTK_AND_PTHREAD */ +#else /* not FORWARD_SIGNAL_TO_MAIN_THREAD */ #define SIGNAL_THREAD_CHECK(signo) -#endif /* not HAVE_GTK_AND_PTHREAD */ +#endif /* not FORWARD_SIGNAL_TO_MAIN_THREAD */ /* arch-tag: 4580e86a-340d-4574-9e11-a742b6e1a152 (do not change this comment) */