aboutsummaryrefslogtreecommitdiffstats
path: root/src/ChangeLog
diff options
context:
space:
mode:
authorBill Wohler2013-03-02 14:55:12 -0800
committerBill Wohler2013-03-02 14:55:12 -0800
commitaef2281c76c1a6ec9cb988b8c339a1ed569f1114 (patch)
treeee1503fffe75c38cc306ad85ca594a5ee2ee27dc /src/ChangeLog
parent21733e4f154f8830fa568a347a0d6dbd59793c2b (diff)
parent2db41375423b6a48a55df2c5922bb2813319f06f (diff)
downloademacs-aef2281c76c1a6ec9cb988b8c339a1ed569f1114.tar.gz
emacs-aef2281c76c1a6ec9cb988b8c339a1ed569f1114.zip
Merge from trunk; up to 2013-03-02T21:05:52Z!eggert@cs.ucla.edu.
Diffstat (limited to 'src/ChangeLog')
-rw-r--r--src/ChangeLog228
1 files changed, 228 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index e945e221593..adff00f7189 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,231 @@
12013-03-02 Paul Eggert <eggert@cs.ucla.edu>
2
3 The lock for FILE is now .#FILE or .#-FILE (Bug#13807).
4 The old approach, which fell back on DIR/.#FILE.0 through
5 DIR/.#FILE.9, had race conditions that could not be easily fixed.
6 If DIR/.#FILE is a non-symlink file, Emacs now does not create a
7 lock file for DIR/FILE; that is, DIR/FILE is no longer partly
8 protected by a lock if DIR/.#FILE is a non-symlink file ("partly"
9 because the locking mechanism was never reliable in that case).
10 This patch fixes this and other bugs discovered by a code
11 inspection that was prompted by
12 <http://lists.gnu.org/archive/html/emacs-devel/2013-02/msg00531.html>.
13 Also, this patch switches to .#-FILE (not .#FILE) on MS-Windows,
14 to avoid interoperability problems between the MS-Windows and
15 non-MS-Windows implementations. MS-Windows and non-MS-Windows
16 instances of Emacs now ignore each others' locks.
17 * filelock.c (defined_WINDOWSNT): New constant.
18 (MAKE_LOCK_NAME, fill_in_lock_file_name):
19 Don't create DIR/.#FILE.0 through DIR/.#FILE.9. Instead, create
20 DIR/.#FILE symlinks on non-MS-Windows hosts, and DIR/.#-FILE
21 regular files on MS-Windows hosts.
22 (MAKE_LOCK_NAME, unlock_file, Ffile_locked_p):
23 Use SAFE_ALLOCA to avoid problems with long file names.
24 (MAX_LFINFO): Now a local constant, not a global macro.
25 (IS_LOCK_FILE): Remove.
26 (lock_file_1): Don't inspect errno if symlink call succeeds;
27 that's not portable.
28 (lock_file): Document that this function can return if lock
29 creation fails.
30 (lock_file): Don't access freed storage.
31
322013-03-02 Andreas Schwab <schwab@linux-m68k.org>
33
34 * lisp.h (XPNTR) [!USE_LSB_TAG]: Remove extra paren. (Bug#13734)
35
362013-03-02 Paul Eggert <eggert@cs.ucla.edu>
37
38 * textprop.c: Use bool for booleans.
39 (validate_interval_range, Fadd_text_properties)
40 (Fremove_text_properties): Prefer bool to int when either works.
41
422013-03-02 Eli Zaretskii <eliz@gnu.org>
43
44 * textprop.c (Fadd_text_properties, Fremove_text_properties): If
45 the interval tree changes as a side effect of calling
46 modify_region, re-do processing starting from the call to
47 validate_interval_range. (Bug#13743)
48
492013-02-28 Eli Zaretskii <eliz@gnu.org>
50
51 * w32.c (sys_open): Don't reset the flags for FD in fd_info[].
52 (Bug#13546).
53
542013-02-27 Eli Zaretskii <eliz@gnu.org>
55
56 * filelock.c (create_lock_file) [WINDOWSNT]: Use _sopen with
57 _SH_DENYRW flag, instead of emacs_open, to deny any other process
58 access to the lock file until it is written and closed.
59 (Bug#13807)
60
612013-02-27 Paul Eggert <eggert@cs.ucla.edu>
62
63 * callint.c (Qcall_interactively):
64 * macros.c (Qexecute_kbd_macro):
65 Now static.
66
672013-02-26 Bastien Guerry <bzg@gnu.org>
68
69 * window.c (Frecenter): Tiny docstring enhancement.
70
712013-02-26 Paul Eggert <eggert@cs.ucla.edu>
72
73 Minor textprop integer cleanup.
74 * intervals.h, textprop.c (add_text_properties_from_list):
75 Return void, not int, since nobody uses the return value.
76 * textprop.c (validate_plist, add_properties, remove_properties)
77 (Fadd_text_properties):
78 Don't assume list length fits in int.
79 (interval_has_all_properties, interval_has_some_properties)
80 (interval_has_some_properties_list, add_properties, remove_properties)
81 (Fadd_text_properties, Fremove_text_properties)
82 (Fremove_list_of_text_properties, text_property_stickiness):
83 Use bool for booleans.
84 (Fadd_text_properties, Fremove_text_properties):
85 (Fremove_list_of_text_properties):
86 Reindent do-while as per GNU style.
87
882013-02-25 Eli Zaretskii <eliz@gnu.org>
89
90 Implement CLASH_DETECTION for MS-Windows.
91
92 * filelock.c [WINDOWSNT]: Include w32.h.
93 (MAKE_LOCK_NAME): Don't use 'lock', it clashes with MS runtime
94 function of that name. Up-case the macro arguments.
95 (IS_LOCK_FILE): New macro.
96 (fill_in_lock_file_name): Use IS_LOCK_FILE instead of S_ISLNK.
97 (create_lock_file): New function, with body extracted from
98 lock_file_1.
99 [WINDOWSNT]: Implement lock files by writing a regular file with
100 the lock information as its contents.
101 (read_lock_data): New function, on Posix platforms just calls
102 emacs_readlinkat.
103 [WINDOWSNT]: Read the lock info from the file.
104 (current_lock_owner): Call read_lock_data instead of calling
105 emacs_readlinkat directly.
106 (lock_file) [WINDOWSNT]: Run the file name through
107 dostounix_filename.
108
109 * w32proc.c (sys_kill): Support the case of SIG = 0, in which case
110 just check if the process by that PID exists.
111
112 * w32.c (sys_open): Don't reset the _O_CREAT flag if _O_EXCL is
113 also present, as doing so will fail to error out if the file
114 already exists.
115
116 * makefile.w32-in ($(BLD)/filelock.$(O)): Depend on src/w32.h.
117
118 * textprop.c (Fadd_text_properties, Fremove_text_properties)
119 (Fremove_list_of_text_properties): Skip all of the intervals in
120 the region between START and END that already have resp. don't
121 have the requested properties, not just the first one. Add
122 assertions that the loop afterwards always modifies the
123 properties. (Bug#13743)
124
1252013-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
126
127 * callint.c (Fcall_interactively): Use the right lexical environment
128 for `interactive' specs (bug#13811).
129 * eval.c (Feval): Accept a lexical environment.
130
1312013-02-25 Paul Eggert <eggert@cs.ucla.edu>
132
133 Simplify data_start configuration (Bug#13783).
134 This is a followon simplification to the fix for Bug#13650.
135 * Makefile.in (LD_FIRSTFLAG, LIB_GCC, CRT_DIR, LIB_STANDARD)
136 (START_FILES): Remove. All uses removed.
137 (otherobj): Remove $(VMLIMIT_OBJ), as it's now first.
138 (ALLOBJS): Move here from autodeps.mk, and with VMLIMITS_OBJ first.
139 (buildobj.h): Use it.
140 ($(ALLOBJS)): Depend on globals.h.
141 (temacs$(EXEEXT)): Use $(ALLOBJS).
142 * autodeps.mk (ALLOBJS): Move to Makefile.in.
143 * deps.mk (vm-limit.o):
144 * makefile.w32-in ($(BLD)/vm-limit.$(O)):
145 Do not depend on mem-limits.h.
146 * emacs.c (__do_global_ctors, __do_global_ctors_aux)
147 (__do_global_dtors, __CTOR_LIST__, __DTOR_LIST__)
148 [__GNUC__ && !ORDINARY_LINK]: Remove.
149 * mem-limits.h, pre-crt0.c: Remove.
150 * unexaix.c, unexcoff.c: Don't include mem-limits.h.
151 * unexcoff.c (etext): New decl.
152 (make_hdr): Use DATA_START instead of start_of_data.
153 * vm-limit.c: Move most of mem-limits.h's contents here.
154 (data_start): New decl. It's OK if this is approximate,
155 so simplify-away some unnecessary exactness.
156 (POINTER): Remove; all uses removed.
157 (data_space_start): Now char *, to avoid casts.
158 (exceeds_lisp_ptr): New function, replacing the old
159 EXCEEDS_LISP_PTR macro. All uses changed.
160 (check_memory_limits): Simplify and remove casts.
161 (start_of_data) [!CANNOT_DUMP || !SYSTEM_MALLOC]: Remove.
162 (memory_warnings): Use data_start instead of start_of_data.
163
1642013-02-24 Andreas Schwab <schwab@linux-m68k.org>
165
166 * xdisp.c (set_message): Only check for debug-on-message if STRING
167 is a string. (Bug#13797)
168
1692013-02-24 Paul Eggert <eggert@cs.ucla.edu>
170
171 Fix regression introduced by July 10 filelock.c patch.
172 * filelock.c (fill_in_lock_file_name): Fix crash caused by the
173 2012-07-10 patch to this file. Reported by Eli Zaretskii in
174 <http://lists.gnu.org/archive/html/emacs-devel/2013-02/msg00533.html>
175 and diagnosed by Andreas Schwab in
176 <http://lists.gnu.org/archive/html/emacs-devel/2013-02/msg00534.html>.
177
1782013-02-22 Paul Eggert <eggert@cs.ucla.edu>
179
180 Assume C89 or better.
181 * ralloc.c (SIZE, POINTER, NIL):
182 * vm-limit.c (POINTER):
183 Remove, replacing all uses with C89 equivalents. These old
184 symbols were present only for porting to pre-C89 platforms.
185
1862013-02-22 Claudio Bley <claudio.bley@gmail.com>
187
188 * w32.c (emacs_gnutls_pull): Don't call 'select', and don't loop.
189 This avoids warning messages reported as part of Bug#13546.
190
1912013-02-21 Ken Brown <kbrown@cornell.edu>
192
193 * sheap.c (report_sheap_usage): Fix arguments of message1_no_log.
194
1952013-02-20 Stefan Monnier <monnier@iro.umontreal.ca>
196
197 * sheap.c (report_sheap_usage): Prefer message1_nolog.
198
199 * keyboard.c (Qcommand_execute): New var.
200 (command_loop_1, read_char): Use it.
201 (Fcommand_execute): Remove, replace by an Elisp implementation.
202 (syms_of_keyboard): Adjust accordingly.
203
2042013-02-19 Daniel Colascione <dancol@dancol.org>
205
206 * sheap.c (report_sheap_usage): Use message, not message1, so
207 that we don't try to create a buffer while we're in the middle
208 of dumping Emacs. Explain why.
209
2102013-02-20 Dmitry Antipov <dmantipov@yandex.ru>
211 * search.c (find_newline): Return byte position in bytepos.
212 Adjust comment.
213 (find_next_newline_no_quit, find_before_next_newline):
214 Add bytepos argument.
215 * lisp.h (find_newline, find_next_newline_no_quit)
216 (find_before_next_newline): Adjust prototypes.
217 * bidi.c (bidi_find_paragraph_start):
218 * editfns.c (Fconstrain_to_field, Fline_end_position):
219 * indent.c (compute_motion, vmotion):
220 * xdisp.c (back_to_previous_line_start, forward_to_next_line_start):
221 (get_visually_first_element, move_it_vertically_backward):
222 Adjust users and avoid calls to CHAR_TO_BYTE where appropriate.
223
2242013-02-19 Eli Zaretskii <eliz@gnu.org>
225
226 * w32proc.c (new_child): Avoid leaking handles if the subprocess
227 resources were not orderly released.
228
12013-02-17 Eli Zaretskii <eliz@gnu.org> 2292013-02-17 Eli Zaretskii <eliz@gnu.org>
2 230
3 * xdisp.c (x_draw_vertical_border): For a window that is neither 231 * xdisp.c (x_draw_vertical_border): For a window that is neither