1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-29 08:31:35 -08:00
Commit graph

35724 commits

Author SHA1 Message Date
Glenn Morris
4a25c1cb1e * src/process.c (handle_child_signal): Handle systems without WCONTINUED
Fixes: debbugs:15110
2014-04-29 08:12:36 -07:00
Eli Zaretskii
80d982d7ad Fix debugging code for checking the newline cache.
src/search.c (Fnewline_cache_check): Don't try to count newlines
 outside the buffer's restriction, as find_newline doesn't support
 that.
2014-04-23 18:21:25 +03:00
Paul Eggert
34e856d5ac Port to GCC 4.9.0 with --enable-gcc-warnings.
* image.c (struct my_jpeg_error_mgr) [lint]: Remove member fp.
All uses removed.
(jpeg_load_body) [lint]: Add a 'volatile' to pacify a buggy GCC in
a way that also works with GCC 4.9.0.
2014-04-22 13:19:17 -07:00
Paul Eggert
0fae5004bc * search.c (Fnewline_cache_check): Remove unused locals. 2014-04-22 13:13:59 -07:00
Eli Zaretskii
2f999d5275 Add debugging facility for the newline cache.
See the discussion in
http://lists.gnu.org/archive/html/emacs-devel/2014-04/msg00295.html
for more detail.

 src/search.c (find_newline1): New subroutine.
 (Fnewline_cache_check): New function.
 (syms_of_search): Defsubr it.
2014-04-22 20:37:35 +03:00
Jarek Czekalski
6709d4dab9 Fix freezing with scroll bars of GTK3 Toolkit.
* src/keyboard.c (unblock_input): Add comment.
* src/xgselect.c (xg_select): Prevent Glib main loop recursion.

Fixes: debbugs:15801
2014-04-21 11:55:28 -04:00
Paul Eggert
4fa20d8f8d Spelling fixes. 2014-04-20 17:31:59 -07:00
Stefan Monnier
d7b659bb06 * src/intervals.c (rotate_right, rotate_left): Fix up length computation.
Also change identifiers to match the comments, and add more assertions.

Fixes: debbugs:16234
2014-04-19 14:13:26 -04:00
Eli Zaretskii
ea0ca0f458 Fix bug #17288 with inserting left truncation glyph under linum-mode.
src/xdisp.c (insert_left_trunc_glyphs): Ensure the left truncation
 glyph is written to TEXT_AREA of the temporary glyph_row.
2014-04-18 11:35:09 +03:00
Eli Zaretskii
ad62a11591 src/ChangeLog: Add header line to recent MSDOS-related entries. 2014-04-18 10:52:18 +03:00
Paul Eggert
3155951737 * emacs.c (close_output_streams): Don't clear and restore errno. 2014-04-17 23:40:15 -07:00
Jan Djärv
53e46f3ad6 Prevent endless loop in x_make_frame_visible.
* xterm.c (x_make_frame_visible): Prevent endless loop when frame
never becomes visible, i.e. using XMonad .

Fixes: debbugs:17237
2014-04-17 11:07:58 +02:00
Eli Zaretskii
8915b84286 Fix bug #17281 with infloop in line-pixel-height.
src/xdisp.c (Fline_pixel_height): Don't assume that the current
 buffer and the selected window's buffer are one and the same.
2014-04-17 11:58:59 +03:00
Eli Zaretskii
f76da67d40 Fix bug #17269 with corruption of the newline cache.
src/insdel.c (invalidate_buffer_caches): Invalidate the bidi
 paragraph-start cache before the newline cache.
2014-04-17 10:24:40 +03:00
Stefan Monnier
63032a0eb9 * src/window.c (save_window_save): Lookup window_point_insertion_type in
the right buffer.
(Qwindow_point_insertion_type): New var.
(syms_of_window): Initialize it.

Fixes: debbugs:15457
2014-04-16 10:00:39 -04:00
Eli Zaretskii
bf6b4923f7 Fix the MSDOS build.
src/unexcoff.c [MSDOS]: Include libc/atexit.h.
 (copy_text_and_data): Zero out the atexit chain pointer before
 dumping Emacs.
 src/termhooks.h (encode_terminal_code): Update prototype.
 src/term.c (encode_terminal_code) [DOS_NT]: Make it externally
 visible for all DOS_NT ports, not just WINDOWSNT.
 (syms_of_term) [!MSDOS]: Don't define 'tty-menu-*' symbols on MSDOS.
 src/sysdep.c (emacs_sigaction_init, init_signals): Don't use SIGCHLD
 unless it is defined.
 (emacs_pipe) [MSDOS]: Redirect to 'pipe'.
 src/process.c (close_on_exec, accept4, process_socket): Move into
 the "ifdef subprocesses" part.
 (catch_child_signal): Condition by "ifdef subprocesses".
 (syms_of_process) <Qinternal_default_process_sentinel>
 <Qinternal_default_process_filter>: Condition by "ifdef subprocesses".
 src/msdos.h: Add prototypes for new functions.
 (EINPROGRESS): Define.
 (O_CLOEXEC): Define to zero.
 src/msdos.c (check_window_system): Remove unnecessary an
 incompatible duplicate function.
 (sys_opendir, readlinkat, faccessat, fstatat, unsetenv): New
 functions in support of new functionality.
 src/menu.c (single_menu_item): Add visual indication  of submenu
 also for menus on MSDOS frames.
 (Fx_popup_menu) [!MSDOS]: Do not call tty_menu_show on MSDOS.
 src/lisp.h (CHECK_PROCESS) [!subprocesses]: Do not define
 when async subprocesses aren't supported.
 src/font.h (FONT_WIDTH) [MSDOS]: MSDOS-specific definition.
 src/emacs.c (close_output_streams): Zero out errno before calling
 close_stream.
 src/dired.c [MSDOS]: Include msdos.h.
 src/conf_post.h (opendir) [MSDOS]: Redirect to sys_opendir.
 (DATA_START) [MSDOS]: Define.
 (SYSTEM_PURESIZE_EXTRA) [MSDOS]: Enlarge by 25K.
 src/callproc.c (block_child_signal, unblock_child_signal) [MSDOS]:
 Ifdef away for MSDOS.
 (record_kill_process) [MSDOS]: Ifdef away the entire body for MSDOS.
 (call_process_cleanup) [MSDOS]: Ifdef away portions not relevant
 for MSDOS.
 (call_process) [MSDOS]: Fix call sequence of dostounix_filename.
 Use temporary file template that is compatible with mkostemp.
 Move vfork-related portions under #ifndef MSDOS.
 (syms_of_callproc): Unify templates of MSDOS and WINDOWSNT.

 lisp/term/pc-win.el (x-list-fonts, x-get-selection-value): Provide
 doc strings, as required by snarf-documentation.

 msdos/sedlisp.inp:
 msdos/sedlibmk.inp:
 msdos/sedleim.inp:
 msdos/sed3v2.inp:
 msdos/sed2v2.inp:
 msdos/sed1v2.inp: Update Sed scripts for Emacs 24.4.
 msdos/inttypes.h: Add PRIdMAX.
 msdos/INSTALL: Update for Emacs 24.4.
 msdos/sedadmin.inp: New file.
2014-04-16 16:27:28 +03:00
Paul Eggert
3a31cae467 Revert previous change. 2014-04-15 13:05:02 -07:00
Eli Zaretskii
ad0dfd98e3 Resurrect 2 entries in src/ChangeLog nuked by the previous commit. 2014-04-15 18:56:23 +03:00
Paul Eggert
f5a312939f Fix some xgselect-vs-pselect bugs.
This may not fix Bug#17172, but it fixes some bugs discovering
while auditing xgselect.c for that bug.
when one of glib's file descriptors is greater than FDS_LIM.
Treat rfds, wfds, efds consistently, and test G_IO_PRI too.
Clear input masks when pselect returns zero.
2014-04-15 08:43:41 -07:00
Stefan Monnier
20fa59a004 * src/buffer.c (Foverlays_at): Add argument `sorted'.
* doc/lispref/display.texi (Overlay Properties): Reword the doc of `priority'.
(Finding Overlays): Document new arg of `overlays-at'.
* lisp/obsolete/lucid.el (extent-at):
* lisp/htmlfontify.el (hfy-overlay-props-at): Use the new `sorted' arg of
overlays-at.
(hfy-fontify-buffer): Remove unused var `orig-ovls'.
* lisp/ps-def.el (ps-generate-postscript-with-faces1): Use the new `sorted'
arg of overlays-at.  Use `invisible-p'.
2014-04-15 09:21:18 -04:00
Eli Zaretskii
ac6ec89c15 Fix bidirectional redisplay when deletion creates a paragraph start.
src/insdel.c (invalidate_buffer_caches): When deleting or replacing
 text, invalidate the bidi_paragraph_cache upto and including the
 preceding newline.
2014-04-14 18:32:27 +03:00
Paul Eggert
13a5993b31 Port to IRIX 6.5.
This port requires IRIX cc, as I did not have time to get
undump working with the old GCC on the system I had access to,
but that's better than nothing.
* configure.ac (gl_GCC_VERSION_IFELSE): Remove unused macro
that wouldn't have worked anyway, with IRIX cc.
(emacs_cv_clang, emacs_cv_sanitize_address)
(ns_osx_have_104, ns_osx_have_105):
Don't assume '#error' makes the compiler fail,
as this doesn't work with IRIX cc.
(CFLAGS, LIBS): Don't let the GnuTLS results infect later 'configure'
checks.  This runs afoul of an IRIX configuration where GnuTLS is
in an optional library that also contains getdelim, and causes
a later 'configure' to incorrectly think getdelim is supported.
* src/alloc.c (TAGGABLE_NULL): New constant,
for porting to hosts with nontrivial DATA_SEG_BITS settings.
(next_vector, set_next_vector): Use it.
* src/conf_post.h (INET6) [IRIX6_5]: Define.
(HAVE_GETADDRINFO) [IRIX6_5]: Undef.
* src/data.c (BITS_PER_ULL): Don't assume ULLONG_MAX is defined.
* src/lisp.h (lisp_h_XPNTR): Don't OR in bits that aren't masked out,
for consistency with how TAGGABLE_NULL is computed.

Fixes: debbugs:9684
2014-04-13 15:51:08 -07:00
Eli Zaretskii
ced78c5a65 Fix open-dribble-file's treatment of non-ASCII file names.
src/keyboard.c (Fopen_dribble_file): Encode the dribble file-name
 before passing it to system APIs.
2014-04-13 13:45:46 +03:00
Eli Zaretskii
ff252be0a8 Fix bug #17255 with insufficient pure space on 32-bit Posix builds.
src/puresize.h (BASE_PURESIZE): Bump by 1K.
2014-04-13 10:33:15 +03:00
Stefan Monnier
285d6d5d0f * src/bytecode.c (exec_byte_code): Rework the volatiles. Most importantly,
make sure stack.byte_string_start is not de-adjusted by pushhandler.
2014-04-12 22:51:11 -04:00
Paul Eggert
a9108bf189 * keyboard.c (Fopen_dribble_file): Avoid some races.
Fixes: debbugs:17187
2014-04-12 14:54:27 -07:00
Eli Zaretskii
180c8ce0c6 Fix bug #17244 with line-move-visual when display string covers a lot of text.
src/xdisp.c (move_it_by_lines): If a large portion of buffer text is
 covered by a display string that ends in a newline, and that cases
 going back by DVPOS lines to hit the search limit, lift the limit
 and go back until DVPOS is reached.
 src/indent.c (Fvertical_motion): Handle correctly the case when the
 display string is preceded by an empty line.
2014-04-12 14:21:47 +03:00
Eli Zaretskii
95765a6ac3 src/w32.c (sys_umask) <WRITE_USER>: Remove redundant constant.
src/w32.c (sys_umask) <WRITE_USER>: Remove redundant constant, and
 use S_IWRITE instead.
2014-04-11 11:11:57 +03:00
Glenn Morris
34e083e360 * src/keyboard.c (Fopen_dribble_file): Make file private.
Fixes: debbugs:17187
2014-04-10 22:47:32 -07:00
Ken Brown
0cccc183d7 Revert most of the recent change involving manifests on Cygwin. (Bug#17176)
* configure.ac (EMACS_MANIFEST): Revert last change (but leave
UPDATE_MANIFEST empty).
* nt/emacs.rc: Revert last change.
* src/Makefile.in (EMACS_MANIFEST): Revert last change.
2014-04-09 17:16:37 -04:00
Stefan Monnier
e3b838807b * src/alloc.c: Keep track of symbols referenced from pure space (bug#17168).
(symbol_block_pinned): New var.
(Fmake_symbol): Initialize `pinned'.
(purecopy): New function, extracted from Fpurecopy.  Mark symbols as
pinned and signal an error for un-purifiable objects.
(pure_cons): Use it.
(Fpurecopy): Use it, except for objects that can't be purified.
(mark_pinned_symbols): New function.
(Fgarbage_collect): Use it.
(gc_sweep): Remove hack made unnecessary.
* src/lisp.h (struct Lisp_Symbol): New bitfield `pinned'.
2014-04-07 12:08:46 -04:00
Eli Zaretskii
aa5ccb01a5 src/bidi.c: Describe the design of reordering engine in the commentary. 2014-04-06 18:56:01 +03:00
Glenn Morris
50ea0f87d6 Minor doc updates related to dribble files
* doc/emacs/trouble.texi (Checklist):
* doc/lispref/os.texi (Recording Input): Dribble files may contain passwords.

* lisp/help.el (view-lossage): Doc tweak.

* src/keyboard.c (Fopen_dribble_file): Doc tweak.
2014-04-05 11:33:55 -07:00
Stefan Monnier
114d739bef src/buffer.h, src/frame.h: Clarify doc of optimization variables. 2014-04-04 12:59:50 -04:00
Jan Djärv
11a9c72faf Backport from trunk.
* nsmenu.m (update_frame_tool_bar): Return early if view or toolbar
is nil.  If waiting for toolbar to complete, force a redraw.
(free_frame_tool_bar): Set wait_for_tool_bar = NO

       * nsterm.h (EmacsView): Add wait_for_tool_bar.

* nsterm.m (updateFrameSize:): If waiting for the tool bar and tool
       bar is zero height, just return (Bug#16976).
       (initFrameFromEmacs:): Initialize wait_for_tool_bar.
2014-04-04 18:32:24 +02:00
Eli Zaretskii
97bac2112e src/keyboard.c: Fix a typo in a comment to read_char. 2014-04-04 16:19:35 +03:00
Ken Brown
ebe8e0765c Don't use manifest on Cygwin. (Bug#17176)
* nt/emacs.rc: Don't use manifest on Cygwin.
* configure.ac (EMACS_MANIFEST, UPDATE_MANIFEST): Leave these
variables empty on Cygwin. 
* src/Makefile.in (EMACS_MANIFEST): Update comment.
2014-04-03 15:10:35 -04:00
Stefan Monnier
062e286b7c * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function): Handle $'
used as a variable.

Fixes: debbugs:17174
2014-04-02 20:41:09 -04:00
Martin Rudalics
ffcd5669d6 In x_new_font don't calculate non-toolkit scrollbar width from font width (Bug#17163).
* xterm.c (x_new_font): Don't calculate non-toolkit scrollbar
width from font width (Bug#17163).
2014-04-02 16:33:33 +02:00
Martin Rudalics
632e91a645 In x_set_window_size postpone calculation of default frame sizes (Bug#17142).
* frame.c (x_set_frame_parameters): Calculate default values of
new frame sizes only after all other frame parameters have been
processed (Bug#17142).
2014-03-30 15:31:45 +02:00
Ken Brown
9c67d3ba99 * src/conf_post.h (SYSTEM_PURESIZE_EXTRA) [CYGWIN]: Set to 10000. (Bug#17112) 2014-03-28 12:32:54 -04:00
YAMAMOTO Mitsuharu
08be62f4b1 Adjust image background width on X11 accordingly when its x position is adjusted. (Bug#17115) 2014-03-28 09:50:53 +09:00
YAMAMOTO Mitsuharu
0c4e715c98 Fix bug #17115 with displaying on w32 images that have 'box' face.
src/w32term.c (x_draw_image_glyph_string): Fix computation of height
 and width of image background when it is displayed with a 'box'
 face.
2014-03-27 18:25:17 +02:00
Paul Eggert
3fd3e73693 More backward-compatible fix to char-equal core dump.
* editfns.c (Fchar_equal): In unibyte buffers, assume values in
range 128-255 are raw bytes.  Suggested by Eli Zaretskii.

Fixes: debbugs:17011
2014-03-26 10:55:31 -07:00
Paul Eggert
05b250c2c0 Fix core dump in char-equal.
* editfns.c (Fchar_equal): Do not use MAKE_CHAR_MULTIBYTE in
unibyte buffers, as we can't tell whether the characters are
actually unibyte.

Fixes: debbugs:17011
2014-03-25 22:35:38 -07:00
Paul Eggert
b18d7820f3 * insdel.c (adjust_markers_for_delete): Remove unused local. 2014-03-25 21:07:25 -07:00
Barry O'Reilly
37ea8275f7 Undo in region after markers in undo history relocated
* simple.el (primitive-undo): Only process marker adjustments
validated against their corresponding (TEXT . POS).  Issue warning
for lone marker adjustments in undo history.  (Bug#16818)
(undo-make-selective-list): Add marker adjustments to selective
undo list based on whether their corresponding (TEXT . POS) is in
the region.  Remove variable adjusted-markers, which was unused
and only non nil during undo-make-selective-list.
(undo-elt-in-region): Return nil when passed a marker adjustment
and explain in function doc.

Have (MARKER . ADJUSTMENT) undo records always be immediately
after their corresponding (TEXT . POS) record in undo list.
(Bug#16818)
* lisp.h (record-delete): New arg record_markers.
(record_marker_adjustment): No longer needed outside undo.c.
* insdel.c (adjust_markers_for_delete): Move calculation of marker
adjustments to undo.c's record_marker_adjustments.  Note that
fileio.c's decide_coding_unwind is another caller to
adjust_markers_for_delete.  Because it has undo list bound to t,
it does not rely on adjust_markers_for_delete to record marker
adjustments.
(del_range_2): Swap call to record_delete and
adjust_markers_for_delete so as undo marker adjustments are
recorded before current deletion's adjustments, as before.
(adjust_after_replace):
(replace_range): Pass value for new record_markers arg to
delete_record.
* undo.c (record_marker_adjustment): Renamed to
record_marker_adjustments and made static.
(record_delete): Check record_markers arg and call
record_marker_adjustments.
(record_change): Pass value for new record_markers arg to
delete_record.
(record_point): at_boundary calculation no longer needs to account
for marker adjustments.

* undo-tests.el (undo-test-marker-adjustment-nominal):
(undo-test-region-t-marker): New tests of marker adjustments.
(undo-test-marker-adjustment-moved):
(undo-test-region-mark-adjustment): New tests to demonstrate
bug#16818, which fail without the fix.

* markers.texi (Moving Marker Positions): The 2014-03-02 doc
change mentioning undo's inability to handle relocated markers no
longer applies.  See bug#16818.
* text.texi (Undo): Expand documentation of (TEXT . POS) and
(MARKER . ADJUSTMENT) undo elements.
2014-03-24 22:47:39 -04:00
Martin Rudalics
f2999a33d0 Refine previous fix of x_set_window_size to handle Bug#17077.
* w32term.c (x_set_window_size): Refine fix from 2014-03-14
(Bug#17077).
2014-03-24 09:50:17 +01:00
Glenn Morris
33f0ba7e49 * src/fileio.c (Ffile_symlink_p): Doc fix.
Fixes: debbugs:17073
2014-03-23 16:38:40 -07:00
Stefan Monnier
f6614a4770 * lisp/simple.el (redisplay-highlight-region-function): Increase priority of
overlay to make sure boundaries are visible.
* src/buffer.c (struct sortvec): Add field `spriority'.
(compare_overlays): Use it.
(sort_overlays): Set it.

Fixes: debbugs:15899
2014-03-23 18:30:47 -04:00