1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-27 07:41:28 -08:00
Commit graph

112643 commits

Author SHA1 Message Date
Paul Eggert
f462f0750f Fix minor problems found by static checking.
* image.c (XGetPixel, XPutPixel) [HAVE_NS]: Now static.
(expect): Avoid nested-if warning.
(x_build_heuristic_mask) [HAVE_NS]: Avoid unused-var warning.
* nsmenu.m (fillWithWidgetValue:): Avoid type warning.
* nsterm.h, nsterm.m (ns_select):
* xgselect.c, xgselect.h (xg_select):
Adjust signature to better match pselect's.
* nsterm.m (ns_select):
Don't set *TIMEOUT, since pselect doesn't.
* regex.c (whitespace_regexp): Now const_re_char *, to avoid
diagnostic about assigning const char * to it.
* xfaces.c (x_display_info) [HAVE_NS]: Remove; unused.
2013-08-26 14:31:50 -07:00
Stefan Monnier
068f9124b4 * src/lread.c (substitute_object_recurse): Handle hash-tables as well.
Fixes: debbugs:15190
2013-08-26 16:33:21 -04:00
Paul Eggert
1fc8eb33f5 Fix unlikely core dump in init_tty, and simplify terminfo case.
* term.c (init_tty) [TERMINFO]: Fix check for buffer overrun.
The old version incorrectly dumped core if malloc returned a
buffer containing only non-NUL bytes.
(init_tty): Do not allocate or free termcap buffers; the
struct does that for us now.
* termchar.h (TERMCAP_BUFFER_SIZE) [!TERMINFO]: New constant.
(struct tty_display_info): Define members termcap_term_buffer and
termcap_strings_buffer only if !TERMINFO, since terminfo doesn't
use them.  Allocate them directly in struct rather than indirectly
via a pointer, to simplify init_tty.
2013-08-26 11:10:30 -07:00
Paul Eggert
f5adc984fb * frame.c (check_minibuf_window): Initialize 'window' properly,
so that Emacs reliably aborts later if 'window' is not initialized.
2013-08-26 10:31:00 -07:00
Dmitry Antipov
447218dd74 Fix ChangeLog typo. 2013-08-26 20:29:52 +04:00
Jan Djärv
efec3894b2 * gtkutil.c (xg_initialize): Set gtk-menu-bar-accel to "" instead
of VoidSymbol.

Fixes: debbugs:15154
2013-08-26 17:44:56 +02:00
Stefan Monnier
a8544941cf * lispref/variables.texi (File Local Variables): Don't recommend quoting! 2013-08-26 11:28:24 -04:00
Dmitry Antipov
e1d0341e25 * lisp.h (Mouse_HLInfo): Drop set-but-unused members
mouse_face_beg_y and mouse_face_end_y.
* xdisp.c (note_tool_bar_highlight, mouse_face_from_buffer_pos)
(mouse_face_from_string_pos, note_mode_line_or_margin_highlight):
Adjust users and update comment where appropriate.
2013-08-26 18:00:55 +04:00
Michael Albinus
78fc2530af * minibuffer.el: Revert change from 2013-08-20.
* net/tramp.el (tramp-find-method, tramp-find-user): Mark result
with text property `tramp-default', if appropriate.
(tramp-check-proper-host): New defun.
(tramp-dissect-file-name): Do not check hostname.  Revert change
of 2013-03-18.
(tramp-backtrace): Make VEC-OR-PROC optional.

* net/tramp-adb.el (tramp-adb-maybe-open-connection):
* net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
* net/tramp-sh.el (tramp-maybe-open-connection):
* net/tramp-smb.el (tramp-smb-maybe-open-connection): Apply
`tramp-check-proper-host'.
2013-08-26 15:17:22 +02:00
Martin Rudalics
bfff644518 New function check_minibuf_window to fix bug#15183.
* frame.c (check_minibuf_window): New function.
(delete_frame, Fmake_frame_invisible, Ficonify_frame): Call
check_minibuf_window (Bug#15183).
2013-08-26 14:39:08 +02:00
Tassilo Horn
edca97cde7 * epa-hook.el (epa-file-encrypt-to): Quote `safe-local-variable'
lambda expression in order to have `describe-variable' display it.
2013-08-26 13:03:09 +02:00
Dmitry Antipov
c80016b3c1 * window.h (struct window): Replace last_cursor with last_cursor_vpos
because this is the only last cursor data we need to keep and consult.
* window.c (replace_window, set_window_buffer, Fsplit_window_internal):
* xdisp.c (mark_window_display_accurate_1, try_cursor_movement):
Adjust users.
2013-08-26 13:33:37 +04:00
Michael Albinus
df54bcbde0 * net/tramp-sh.el (tramp-sh-handle-verify-visited-file-modtime):
BUF can be optional.  (Bug#15186)
2013-08-26 08:59:53 +02:00
Dmitry Antipov
de3967312f Fix recovering from possible decompression error. Since
insert_from_gap doesn't always move point, we can't use PT as
the position where the partially decompressed data ends, and
should count how may bytes was produced so far.
* decompress.c (struct decompress_unwind_data): Add nbytes member.
(unwind_decompress): Really delete partially uncompressed data.
(Fzlib_decompress_region): Take decompressed data size into account.
2013-08-26 09:32:47 +04:00
Dmitry Antipov
1570ae92dc * alloc.c (sweep_vectors): Do not initialize 'block' twice. 2013-08-26 09:26:06 +04:00
Dmitry Antipov
c76826d98c * syntax.c (init_syntax_once): Adjust comment and do an early
initialization of Qchar_table_extra_slots just once...
* casetab.c (init_casetab_once):
* category.c (init_category_once):
* character.c (syms_of_character):
* coding.c (syms_of_coding):
* xdisp.c (syms_of_xdisp): ...and omit it here.
2013-08-26 09:20:59 +04:00
Xue Fuqiao
eed991017a Fix broken customization in Flymake.
* lisp/progmodes/flymake.el (flymake-get-real-file-name-function):
Fix broken customization.  (Bug#15184)
2013-08-26 06:30:56 +08:00
Alan Mackenzie
8a51e84232 Improve indentation of bracelists defined by macros (without "=").
* progmodes/cc-engine.el (c-inside-bracelist-p): When a macro
expansion begins with "{", regard it as bracelist when it doesn't
contain a ";".
2013-08-25 21:06:07 +00:00
Vincent Belaïche
e687aa335a Add a question into configure.bat whether the user want to continue at
his/her own risks.
2013-08-25 22:11:56 +02:00
Glenn Morris
67aeda8d2f * INSTALL: Refer to INSTALL.MSYS. 2013-08-25 12:46:41 -07:00
Glenn Morris
b1dc190562 * nt/configure.bat: Disable it.
Ref http://lists.gnu.org/archive/html/emacs-devel/2013-08/msg00705.html
2013-08-25 12:44:59 -07:00
Alan Mackenzie
869455d432 Parse C++ inher-intro when there's a template split over 2 lines.
* progmodes/cc-engine.el (c-guess-basic-syntax CASE 5C): Code more
rigorously the search for "class" etc. followed by ":".

* progmodes/cc-langs.el (c-opt-<>-sexp-key): Make the value for
random languages a regexp which never matches rather than nil.
2013-08-25 13:52:14 +00:00
Alan Mackenzie
b5eb903526 Handle "/"s more accurately in test for virtual semicolons (AWK Mode).
* progmodes/cc-awk.el (c-awk-one-line-possibly-open-string-re)
(c-awk-regexp-one-line-possibly-open-char-list-re)
(c-awk-one-line-possibly-open-regexp-re)
(c-awk-one-line-non-syn-ws*-re): Remove.
(c-awk-possibly-open-string-re, c-awk-non-/-syn-ws*-re)
(c-awk-space*-/-re, c-awk-space*-regexp-/-re)
(c-awk-space*-unclosed-regexp-/-re): New constants.
(c-awk-at-vsemi-p): Reformulate better to recognize "/"s which
aren't regexp delimiters.

* progmodes/cc-engine.el (c-crosses-statement-barrier-p): Add in
handling for a rare situation in AWK Mode involving unterminated
strings/regexps.
2013-08-25 10:09:56 +00:00
Eli Zaretskii
6dc695d1e3 Add commentary for the last commit. 2013-08-24 18:21:05 +03:00
Eli Zaretskii
11f20add70 Fix bug #15175 with cursor on boxed characters from display tables.
src/xdisp.c (get_next_display_element): Don't apply to characters
 from a display vector the logic of setting it->end_of_box_run_p
 suitable for characters from a buffer.
2013-08-24 15:59:13 +03:00
Eli Zaretskii
b34454d067 Fix bug #15176 with setting directory times on MS-Windows.
src/w32.c (fdutimens): Call 'utime', which is implemented on w32.c
 to handle directories, rather than '_utime' which doesn't.
2013-08-24 13:15:01 +03:00
Jan Djärv
6e1b469ee2 * gtkutil.c (x_wm_set_size_hint): Don't set hints when maximized
or fullscreen.

Fixes: debbugs:14627
2013-08-24 10:43:36 +02:00
Paul Eggert
9c05bccfb9 System-dependent integer overflow fixes.
* process.c (Fset_process_window_size): Signal an error if
the window size is outside the range supported by the lower level.
* sysdep.c (set_window_size): Return negative on error,
nonnegative on success, rather than -1, 0, 1 on not in system,
failure, success.  This is simpler.  Caller changed.
(serial_configure): Remove unnecessary initialization of local.
(procfs_get_total_memory) [GNU_LINUX]: Don't assume system memory
size fits in unsigned long; this isn't true on some 32-bit hosts.
Avoid buffer overrun if some future version of /proc/meminfo has a
variable name longer than 20 bytes.
(system_process_attributes) [__FreeBSD__]:
Don't assume hw.availpages fits in 'int'.
2013-08-23 19:23:34 -07:00
Glenn Morris
2d85dc347c * lisp/files.el (auto-mode-alist): Use sh-mode for .bash_history. 2013-08-23 14:58:41 -04:00
Paul Eggert
c365c35580 Don't let very long directory names overrun the stack.
Fix some related minor problems involving "//", vfork.
* callproc.c (encode_current_directory): New function.
(call_process): Don't append "/"; not needed.
* fileio.c (file_name_as_directory_slop): New constant.
(file_name_as_directory): Allow SRC to be longer than SRCLEN;
this can save the caller having to alloca.
(Ffile_name_as_directory, Fdirectory_file_name, Fexpand_file_name):
Use SAFE_ALLOCA, not alloca.
(directory_file_name, Fexpand_file_name): Leave leading "//"
alone, since it can be special even on POSIX platforms.
* callproc.c (call_process):
* process.c (Fformat_network_address):
* sysdep.c (sys_subshell):
Use encode_current_directory rather than rolling our own.
(create_process): No need to encode directory; caller does that now.
* process.h (encode_current_directory): New decl.
* sysdep.c (sys_subshell): Work even if vfork trashes saved_handlers.
Rework to avoid 'goto xyzzy;'.
2013-08-23 10:57:07 -07:00
Glenn Morris
bb35f42f61 * lisp/files.el (create-file-buffer): Rework previous change. 2013-08-23 13:34:09 -04:00
Glenn Morris
cb8d261243 * lisp/files.el (interpreter-mode-alist): Use tcl-mode for expect scripts. 2013-08-23 13:09:09 -04:00
Glenn Morris
61611d54b5 * files.el (create-file-buffer): Handle a file whose basename is all spaces.
Fixes: debbugs:15162
2013-08-23 13:08:19 -04:00
Stefan Monnier
e3a6636351 * lisp/textmodes/fill.el (fill-match-adaptive-prefix): Don't throw away
text-properties.

Fixes: debbugs:15155
2013-08-23 11:31:45 -04:00
Stefan Monnier
b9808e7718 * lisp/calc/calc-keypd.el (calc-keypad-execute): `x-flush-mouse-queue' doesn't
exist any more.
(calc-keypad-redraw): Remove unused var `pad'.
(calc-keypad-press): Remove unused var `menu'.
2013-08-23 11:21:19 -04:00
Eli Zaretskii
6c6014d4cc Fix bug #15155 with ignoring face remapping for strings from prefix properties.
src/xdisp.c (handle_face_prop): If the default face was remapped use
 the remapped face for strings from prefix properties.
2013-08-23 17:25:39 +03:00
Glenn Morris
1df7c7caf5 Auto-commit of generated files. 2013-08-23 06:17:44 -04:00
Martin Rudalics
7fd5f65e89 In display-buffer-pop-up-frame make BUFFER current (Bug#15133).
* window.el (display-buffer-pop-up-frame): Call pop-up-frame-function
with BUFFER current so `make-frame' will use it as the new frame's
buffer (Bug#15133).
2013-08-23 08:52:19 +02:00
Dmitry Antipov
6b729d1685 * window.c (struct save_window_data): Fix typo. 2013-08-23 08:17:04 +04:00
Dmitry Antipov
9997ec56be Minor cleanup for redisplay interface and few related functions.
* frame.h (enum text_cursor_kinds): Move from here...
* dispextern.h (enum text_cursor_kinds): ...to here.
(toplevel): Drop unnecessary declarations.
(struct redisplay_interface): Use bool and enum text_cursor_kinds
in update_window_end_hook and draw_window_cursor functions.
(display_and_set_cursor, x_update_cursor): Adjust prototypes.
* nsterm.m (ns_update_window_end, ns_draw_window_cursor):
* w32term.c (x_update_window_end,w32_draw_window_cursor):
* xterm.c (x_update_window_end, x_draw_window_cursor):
* xdisp.c (display_and_set_cursor, update_window_cursor)
(update_cursor_in_window_tree, x_update_cursor): Use bool and
enum text_cursor_kinds where appropriate.
2013-08-23 08:03:25 +04:00
Dmitry Antipov
7f780da621 Redesign redisplay interface to drop updated_row and updated_area.
* dispextern.h (updated_row, updated_area): Remove declaration.
(struct redisplay_interface): Pass glyph row and row area parameters
to write_glyphs, insert_glyphs and clear_end_of_line functions.
(x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
Adjust prototypes.
* dispnew.c (updated_row, updated_area): Remove.
(redraw_overlapped_rows, update_window_line): Adjust user.
(update_marginal_area, update_text_area): Likewise.  Pass updated row
as a parameter.  Prefer enum glyph_row_area to int where appropriate.
* xdisp.c (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
Adjust users.
2013-08-23 07:03:37 +04:00
Paul Eggert
2649579468 * process.c (flush_pending_output): Remove stub.
All uses removed.
2013-08-22 11:29:51 -07:00
Paul Eggert
917c483a29 * configure.ac (EMACS_CONFIG_OPTIONS): Quote systematically.
This improves on the patch already installed, by quoting options
that contain spaces and suchlike systematically, so that
EMACS_CONFIG_OPTIONS is no longer ambiguous when options contain
these characters.

Fixes: debbugs:13274
2013-08-22 10:35:00 -07:00
Stefan Monnier
d0fcaff514 * lisp/erc/erc.el: Use lexical-binding.
(erc-user-full-name): Minor CSE simplification.
(erc-mode-map): Assume command-remapping is available.
(erc-once-with-server-event): Replace `forms' arg with a function arg.
(erc-once-with-server-event-global): Remove.
(erc-ison-p): Adjust to change in erc-once-with-server-event.
(erc-get-buffer-create): Remove arg `proc'.
(iswitchb-make-buflist-hook): Declare.
(erc-setup-buffer): Use pcase; avoid ((lambda ..) ..).
(read-passwd): Assume it exists.
(erc-display-line, erc-cmd-IDLE): Avoid add-to-list, adjust to change
in erc-once-with-server-event.
(erc-cmd-JOIN, erc-set-channel-limit, erc-set-channel-key)
(erc-add-query): Minor CSE simplification.
(erc-cmd-BANLIST, erc-cmd-MASSUNBAN): Adjust to change
in erc-once-with-server-event.
(erc-echo-notice-in-user-and-target-buffers): Avoid add-to-list.
* lisp/erc/erc-track.el: Use lexical-binding.
(erc-make-mode-line-buffer-name): Use closures instead of `(lambda...).
(erc-faces-in): Avoid add-to-list.
* lisp/erc/erc-notify.el: Use lexical-binding.
(erc-notify-timer): Adjust to change in erc-once-with-server-event.
(erc-notify-QUIT): Use a closure instead of `(lambda...).
* lisp/erc/erc-list.el: Use lexical-binding.
(erc-list-install-322-handler, erc-cmd-LIST): Adjust to change in
erc-once-with-server-event.
* lisp/erc/erc-button.el: Use lexical-binding.
(erc-button-next-function): Use a closure instead of `(lambda...).
2013-08-22 00:06:45 -04:00
Stefan Monnier
8352b53087 * lisp/calendar/timeclock.el: Minor cleanups.
(timeclock-ask-before-exiting, timeclock-use-display-time): Use `symbol'.
(timeclock-modeline-display): Define as alias before the actual definition.
(timeclock-mode-line-display): Use define-minor-mode.
(timeclock-day-list-template): Make it a function, add an argument.
(timeclock-day-list-required, timeclock-day-list-length)
(timeclock-day-list-debt, timeclock-day-list-span)
(timeclock-day-list-break): Adjust calls accordingly.
2013-08-21 21:09:08 -04:00
Paul Eggert
4a88129ae4 * callproc.c: Fix race that killed background processes.
(call_process): New arg TEMPFILE_INDEX.  Callers changed.
Record deleted process-id in critical section, not afterwards.
Don't mistakenly kill process created by a call-process invocation
that discards output and does not wait.

Fixes: debbugs:15144
2013-08-21 14:27:30 -07:00
David Engster
6ee6031083 Imported EIEIO test suite from CEDET upstream
* automated/eieio-tests.el, automated/eieio-test-persist.el:
* automated/eieio-test-methodinvoke.el: EIEIO tests from CEDET
  upstream.  Changed to use ERT.
2013-08-21 21:42:52 +02:00
Stefan Monnier
9f7b19259d * lisp/emacs-lisp/pp.el (pp-eval-expression, pp-macroexpand-expression):
Use read--expression so that completion works again.
2013-08-21 14:26:15 -04:00
Glenn Morris
df391f9b3f Auto-commit of generated files. 2013-08-21 06:17:37 -04:00
Dmitry Antipov
0c5307b05f Fix compilation with GC_MARK_STACK == GC_USE_GCPROS_AS_BEFORE
and GC_MARK_STACK == GC_USE_GCPROS_CHECK_ZOMBIES.
* alloc.c (toplevel): Remove unnecessary nested #if...#endif.
(mark_maybe_object) [!GC_MARK_STACK]: Define to emacs_abort
to shut up compiler in mark_object.
(dump_zombies): Convert to global and add EXTERNALLY_VISIBLE.
2013-08-21 11:02:45 +04:00