aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMiles Bader2007-11-21 04:55:58 +0000
committerMiles Bader2007-11-21 04:55:58 +0000
commitd4aa48db8ed36b1fc7e7b0e6bd35049353f7f96e (patch)
tree4a8c1381059835b73876f59183e228a2fb740d59 /src
parent3d9bd2bc2806ecaf85f4474060a7fadfd00e61fd (diff)
parent33127d1a78f2a37d68ffa09642df2f38d78e95b1 (diff)
downloademacs-d4aa48db8ed36b1fc7e7b0e6bd35049353f7f96e.tar.gz
emacs-d4aa48db8ed36b1fc7e7b0e6bd35049353f7f96e.zip
Merge from emacs--rel--22
Revision: emacs@sv.gnu.org/emacs--devo--0--patch-937
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog10
-rw-r--r--src/ChangeLog.102
-rw-r--r--src/search.c28
-rw-r--r--src/w32bdf.c4
4 files changed, 26 insertions, 18 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 8b6b11b39fa..9f99493e668 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,15 @@
12007-11-21 Jason Rumney <jasonr@gnu.org> 12007-11-21 Jason Rumney <jasonr@gnu.org>
2 2
3 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font): CreateFileMapping
4 returns NULL on failure.
5
62007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
7
8 * search.c (Fset_match_data): Remove the `evaporate' feature.
9 (unwind_set_match_data): Don't use the `evaporate' feature.
10
112007-11-21 Jason Rumney <jasonr@gnu.org>
12
3 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type. 13 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
4 14
5 * w32console.c (w32con_write_glyphs): Remove unused variables. 15 * w32console.c (w32con_write_glyphs): Remove unused variables.
diff --git a/src/ChangeLog.10 b/src/ChangeLog.10
index c5e7bc61e47..b7187263257 100644
--- a/src/ChangeLog.10
+++ b/src/ChangeLog.10
@@ -3016,7 +3016,7 @@
3016 * w32.c: Fix high cpu load for server sockets. 3016 * w32.c: Fix high cpu load for server sockets.
3017 (pfn_WSAEventSelect): New function ptr. 3017 (pfn_WSAEventSelect): New function ptr.
3018 (init_winsock): Load it. 3018 (init_winsock): Load it.
3019 (sys_listen): Set FILE_LISTEN flag. Set event mask for socket's 3019 (sys_listen): Set FILE_LISTEN flag. Set event mask for socket's
3020 char_avail event object to FD_ACCEPT. 3020 char_avail event object to FD_ACCEPT.
3021 (sys_accept): Check FILE_LISTEN flag. Set event mask on new 3021 (sys_accept): Check FILE_LISTEN flag. Set event mask on new
3022 socket's char_avail event object to FD_READ|FD_CLOSE. 3022 socket's char_avail event object to FD_READ|FD_CLOSE.
diff --git a/src/search.c b/src/search.c
index aca95c03308..29def81c3eb 100644
--- a/src/search.c
+++ b/src/search.c
@@ -2964,11 +2964,15 @@ Return value is undefined if the last search failed. */)
2964 return reuse; 2964 return reuse;
2965} 2965}
2966 2966
2967/* Internal usage only: 2967/* We used to have an internal use variant of `reseat' described as:
2968 If RESEAT is `evaporate', put the markers back on the free list 2968
2969 immediately. No other references to the markers must exist in this case, 2969 If RESEAT is `evaporate', put the markers back on the free list
2970 so it is used only internally on the unwind stack and save-match-data from 2970 immediately. No other references to the markers must exist in this
2971 Lisp. */ 2971 case, so it is used only internally on the unwind stack and
2972 save-match-data from Lisp.
2973
2974 But it was ill-conceived: those supposedly-internal markers get exposed via
2975 the undo-list, so freeing them here is unsafe. */
2972 2976
2973DEFUN ("set-match-data", Fset_match_data, Sset_match_data, 1, 2, 0, 2977DEFUN ("set-match-data", Fset_match_data, Sset_match_data, 1, 2, 0,
2974 doc: /* Set internal data on last search match from elements of LIST. 2978 doc: /* Set internal data on last search match from elements of LIST.
@@ -3053,10 +3057,7 @@ If optional arg RESEAT is non-nil, make markers on LIST point nowhere. */)
3053 3057
3054 if (!NILP (reseat) && MARKERP (m)) 3058 if (!NILP (reseat) && MARKERP (m))
3055 { 3059 {
3056 if (EQ (reseat, Qevaporate)) 3060 unchain_marker (XMARKER (m));
3057 free_marker (m);
3058 else
3059 unchain_marker (XMARKER (m));
3060 XSETCAR (list, Qnil); 3061 XSETCAR (list, Qnil);
3061 } 3062 }
3062 3063
@@ -3074,10 +3075,7 @@ If optional arg RESEAT is non-nil, make markers on LIST point nowhere. */)
3074 3075
3075 if (!NILP (reseat) && MARKERP (m)) 3076 if (!NILP (reseat) && MARKERP (m))
3076 { 3077 {
3077 if (EQ (reseat, Qevaporate)) 3078 unchain_marker (XMARKER (m));
3078 free_marker (m);
3079 else
3080 unchain_marker (XMARKER (m));
3081 XSETCAR (list, Qnil); 3079 XSETCAR (list, Qnil);
3082 } 3080 }
3083 } 3081 }
@@ -3141,8 +3139,8 @@ static Lisp_Object
3141unwind_set_match_data (list) 3139unwind_set_match_data (list)
3142 Lisp_Object list; 3140 Lisp_Object list;
3143{ 3141{
3144 /* It is safe to free (evaporate) the markers immediately. */ 3142 /* It is NOT ALWAYS safe to free (evaporate) the markers immediately. */
3145 return Fset_match_data (list, Qevaporate); 3143 return Fset_match_data (list, Qt);
3146} 3144}
3147 3145
3148/* Called to unwind protect the match data. */ 3146/* Called to unwind protect the match data. */
diff --git a/src/w32bdf.c b/src/w32bdf.c
index 80ef098d8de..4a12b1f0190 100644
--- a/src/w32bdf.c
+++ b/src/w32bdf.c
@@ -261,7 +261,7 @@ w32_init_bdf_font(char *filename)
261 error("Fail to open BDF file"); 261 error("Fail to open BDF file");
262 } 262 }
263 hfilemap = CreateFileMapping(hfile, NULL, PAGE_READONLY, 0, 0, NULL); 263 hfilemap = CreateFileMapping(hfile, NULL, PAGE_READONLY, 0, 0, NULL);
264 if (hfilemap == INVALID_HANDLE_VALUE) 264 if (!hfilemap)
265 { 265 {
266 CloseHandle(hfile); 266 CloseHandle(hfile);
267 error("Can't map font"); 267 error("Can't map font");
@@ -828,7 +828,7 @@ int w32_BDF_to_x_font (char *file, char* xstr, int len)
828 size = fileinfo.nFileSizeLow; 828 size = fileinfo.nFileSizeLow;
829 829
830 hfilemap = CreateFileMapping (hfile, NULL, PAGE_READONLY, 0, 0, NULL); 830 hfilemap = CreateFileMapping (hfile, NULL, PAGE_READONLY, 0, 0, NULL);
831 if (hfilemap == INVALID_HANDLE_VALUE) 831 if (!hfilemap)
832 { 832 {
833 CloseHandle (hfile); 833 CloseHandle (hfile);
834 return 0; 834 return 0;