Paul Eggert [Thu, 17 Oct 2013 01:02:32 +0000 (18:02 -0700)]
bool vector int width fixes
* data.c (bool_vector_spare_mask, Fbool_vector_count_matches)
(Fbool_vector_count_matches_at):
Use EMACS_INT, not ptrdiff_t, to record bit counts, as a bit count
can exceed PTRDIFF_MAX, at least in theory.
(Fbool_vector_count_matches_at):
Use int, not ptrdiff_t, to record a value that can't exceed INT_MAX.
Glenn Morris [Wed, 16 Oct 2013 18:23:15 +0000 (14:23 -0400)]
* lisp/tmm.el (tmm--history): New dynamic variable.
(tmm-prompt): Use tmm--history in place of `history'.
Fixes: debbugs:15623
Paul Eggert [Wed, 16 Oct 2013 17:36:04 +0000 (10:36 -0700)]
* process.h (conv_sockaddr_to_lisp): New decl, for newly-extern func.
(struct sockaddr): Add forward decl, for platforms that lack it.
Jan Djärv [Wed, 16 Oct 2013 16:55:45 +0000 (18:55 +0200)]
* nsselect.m (ns_string_from_pasteboard): Remove Fquit, just return
Qnil.
Fixes: debbugs:15628
Eli Zaretskii [Wed, 16 Oct 2013 15:44:02 +0000 (18:44 +0300)]
Implement network-interface-* functions for MS-Windows (bug #15610).
src/w32.c (network_interface_get_info, network_interface_list)
(network_interface_info): New functions.
(GetAdaptersInfo_Proc): New typedef.
(get_adapters_info): New wrapper function.
(globals_of_w32): Initialize g_b_init_get_adapters_info.
src/process.h (network_interface_list, network_interface_info): New
prototypes.
src/process.c (conv_sockaddr_to_lisp): Now externally-visible.
(Fnetwork_interface_list, Fnetwork_interface_info): Define for
all systems. Return non-nil for systems that HAVE_NET_IF_H and
for WINDOWSNT. Doc fix.
(syms_of_process): Defsubr Snetwork_interface_list and
Snetwork_interface_info unconditionally.
Eli Zaretskii [Wed, 16 Oct 2013 15:07:36 +0000 (18:07 +0300)]
Fix bug #15629 with GUI menus on NS.
src/menu.c (have_boxes): Fix redundant simulation of radio buttons
in NS GUI sessions.
Xue Fuqiao [Wed, 16 Oct 2013 13:46:01 +0000 (21:46 +0800)]
Add an index for explicit selective display.
* doc/lispref/display.texi (Selective Display): Add an index for
explicit selective display.
Michael Albinus [Wed, 16 Oct 2013 13:16:53 +0000 (15:16 +0200)]
* net/tramp-smb.el (tramp-smb-acl-program): New customer option.
(tramp-smb-errors): Add error messages.
(tramp-smb-actions-with-acl): New defconst.
(tramp-smb-file-name-handler-alist) [set-file-acl]: Add handler.
(tramp-smb-action-with-acl, tramp-smb-handle-set-file-acl): New defuns.
(tramp-smb-handle-file-acl): Rewrite, using "smbcacls".
(tramp-smb-handle-file-attributes): Simplify test for "stat" capability.
(tramp-smb-get-stat-capability): Fix tests.
Dmitry Antipov [Wed, 16 Oct 2013 09:56:36 +0000 (13:56 +0400)]
* fns.c (Fstring_as_unibyte): Fix last change.
Dmitry Antipov [Wed, 16 Oct 2013 09:30:30 +0000 (13:30 +0400)]
* fns.c (Fstring_as_unibyte): Use xlispstrdup.
Dima Kogan [Wed, 16 Oct 2013 03:02:40 +0000 (23:02 -0400)]
* lisp/progmodes/subword.el (subword-capitalize): Fix Stefan's mess.
Fixes: debbugs:15580
Glenn Morris [Wed, 16 Oct 2013 01:38:12 +0000 (18:38 -0700)]
* ansi-color.el (ansi-color-drop-regexp): Add 1J, 1K, 2K.
Fixes: debbugs:15617
Glenn Morris [Wed, 16 Oct 2013 01:33:16 +0000 (18:33 -0700)]
* files.el (hack-local-variables): Warn about misplaced lexical-binding.
(hack-local-variables--warned-lexical): New.
Fixes: debbugs:15616
Glenn Morris [Wed, 16 Oct 2013 01:30:55 +0000 (18:30 -0700)]
* net/eww.el (eww-render): Always set eww-current-url, and update header line.
(eww-display-html): ... Rather than just doing it here.
Fixes: debbugs:15622
Dmitry Gutov [Wed, 16 Oct 2013 00:21:06 +0000 (04:21 +0400)]
* etc/NEWS: improve wording.
Dmitry Gutov [Wed, 16 Oct 2013 00:17:38 +0000 (04:17 +0400)]
* etc/NEWS: Mention the homepage-related changes in package.el.
Paul Eggert [Tue, 15 Oct 2013 21:03:00 +0000 (14:03 -0700)]
* print.c (print_object): Print " ..." when truncating bool vectors.
Eli Zaretskii [Tue, 15 Oct 2013 18:40:22 +0000 (21:40 +0300)]
Support mouse wheel in TTY menus.
lisp/menu-bar.el (tty-menu-navigation-map): Bind mouse wheels to TTY
menu navigations commands.
Eli Zaretskii [Tue, 15 Oct 2013 18:38:26 +0000 (21:38 +0300)]
Support mouse wheel on MS-Windows text-mode console.
src/w32inevt.c (do_mouse_event): Support mouse wheel and all the 5
standard mouse buttons.
src/termhooks.h (struct input_event): Remove incorrect commentary.
Paul Eggert [Tue, 15 Oct 2013 16:38:36 +0000 (09:38 -0700)]
Disallow bool vector operations on mixed-length operands.
The old behavior left garbage in the result vector sometimes,
and didn't seem to be useful.
* data.c (Qwrong_length_argument): New static var.
(wrong_length_argument): New function.
(bool_vector_binop_driver): Check that args agree in length.
Paul Eggert [Tue, 15 Oct 2013 13:57:37 +0000 (06:57 -0700)]
* keyboard.c, keyboard.h (all_kboards): Now static.
Xue Fuqiao [Tue, 15 Oct 2013 12:47:57 +0000 (20:47 +0800)]
Add usage note of buffer-invisibility-spec.
* src/buffer.c (syms_of_buffer) <buffer-invisibility-spec>: Add usage
note from the lispref.
Xue Fuqiao [Tue, 15 Oct 2013 08:43:56 +0000 (16:43 +0800)]
* doc/lispref/display.texi (Warning Basics): Mention the ‘*Warnings*’ buffer.
Paul Eggert [Tue, 15 Oct 2013 06:36:43 +0000 (23:36 -0700)]
Space after comma in ChangeLogs.
Dmitry Antipov [Tue, 15 Oct 2013 02:45:03 +0000 (06:45 +0400)]
* nsterm.h (struct ns_display_info): Remove set-but-unused
member image_cache (image caches are per-terminal anyway).
(FRAME_X_IMAGE_CACHE): Remove.
* nsterm.m (ns_initialize_display_info): Adjust user.
Dmitry Gutov [Tue, 15 Oct 2013 01:21:22 +0000 (04:21 +0300)]
* indent/ruby.rb: Fix an example, remove wrong example, and add two more.
Xue Fuqiao [Mon, 14 Oct 2013 22:25:14 +0000 (06:25 +0800)]
* doc/misc/cl.texi (Argument Lists): Add indexes for &key and &aux.
Xue Fuqiao [Mon, 14 Oct 2013 22:20:52 +0000 (06:20 +0800)]
Comment
Dima Kogan [Mon, 14 Oct 2013 19:20:29 +0000 (15:20 -0400)]
* lisp/progmodes/subword.el (subword-capitalize): Be careful when
the search for [[:alpha:]] fails.
Fixes: debbugs:15580
Eli Zaretskii [Mon, 14 Oct 2013 16:23:10 +0000 (19:23 +0300)]
Attempt to fix time_t related problems with MinGW 4.0 runtime.
nt/inc/mingw_time.h: New file.
nt/inc/ms-w32.h: Include mingw_time.h instead of doing its job.
src/w32proc.c: Include mingw_time.h.
src/w32.c: Include mingw_time.h.
Eli Zaretskii [Mon, 14 Oct 2013 15:37:12 +0000 (18:37 +0300)]
Implement scrolling of TTY menus when the screen is too short.
src/term.c (tty_menu_display): Accept an additional argument, the
menu item from which to start displaying the menu. Account for
the value of Y when limiting the menu to the number of available
screen lines.
(mi_result): New enumeration.
(read_menu_input): Return enumerated value. When the y coordinate
hits min_y or max_y, return scroll indication instead of wrapping
around the menu.
(tty_menu_activate): Handle the scrolling indications from
read_menu_input. Compute the first menu item to display and pass
it to tty_menu_display.
lisp/menu-bar.el (tty-menu-navigation-map): Bind shifted mouse clicks
to commands that scroll the menu.
Dmitry Antipov [Mon, 14 Oct 2013 12:19:21 +0000 (16:19 +0400)]
* termhooks.h (FRAME_MUST_WRITE_SPACES, FRAME_LINE_INS_DEL_OK)
(FRAME_CHAR_INS_DEL_OK, FRAME_SCROLL_REGION_OK)
(FRAME_SCROLL_REGION_COST, FRAME_MEMORY_BELOW_FRAME):
Adjust to match the change described below.
(struct terminal): Move must_write_spaces, line_ins_del_ok,
char_ins_del_ok, scroll_region_ok, scroll_region_cost and
memory_below_frame members to...
* termchar.h (struct tty_display_info): ...here because they're
relevant only on TTYs. Prefer unsigned bitfield where appropriate.
* term.c (init_tty):
* nsterm.m (ns_create_terminal):
* w32term.c (w32_create_terminal):
* xterm.c (x_create_terminal): Adjust users.
* dispnew.c (line_hash_code, line_draw_cost): Pass frame arg
to filter out non-TTY frames. Adjust comment.
(scrolling): Adjust user. Prefer eassert for debugging check.
Dmitry Antipov [Mon, 14 Oct 2013 10:55:24 +0000 (14:55 +0400)]
* xfaces.c (PT_PER_INCH): Remove unused macro.
* termhooks.h (struct terminal): Remove set-but-unused
member fast_clear_end_of_line.
(FRAME_FAST_CLEAR_END_OF_LINE): Remove.
* nsterm.m (ns_create_terminal):
* term.c (init_tty):
* w32term.c (w32_create_terminal):
* xterm.c (x_create_terminal): Adjust users.
Glenn Morris [Mon, 14 Oct 2013 10:17:44 +0000 (06:17 -0400)]
Auto-commit of generated files.
Paul Eggert [Mon, 14 Oct 2013 07:12:49 +0000 (00:12 -0700)]
* lisp.h (bool_vector_size): New function.
All uses of XBOOL_VECTOR (x)->size changed to bool_vector_size (x).
* data.c (bool_vector_spare_mask, bool_vector_binop_driver)
(Fbool_vector_not, Fbool_vector_count_matches_at):
Remove uses of 'eassume' that should no longer be needed,
because they are subsumed by the 'eassume' in bool_vector_size.
Dmitry Gutov [Mon, 14 Oct 2013 01:51:20 +0000 (04:51 +0300)]
* lisp/progmodes/ruby-mode.el (ruby-smie--args-separator-p): Handle
methods ending with `?' and `!'.
* test/indent/ruby.rb: More examples for bug#15594, both failing and
now passing.
Akinori MUSHA [Mon, 14 Oct 2013 00:23:29 +0000 (03:23 +0300)]
* progmodes/ruby-mode.el (ruby-encoding-map): Add a mapping from
`japanese-cp932' to `cp932' to fix the problem where saving a
source file written in Shift_JIS twice would end up having
`coding: japanese-cp932' which Ruby could not recognize.
(ruby-mode-set-encoding): Add support for encodings mapped to nil
in `ruby-encoding-map'.
(ruby-encoding-map): Map `us-ascii' to nil by default, meaning it
doesn't need to be explicitly declared in magic comment.
(ruby-encoding-map): Add type declaration for better customize UI.
Glenn Morris [Sun, 13 Oct 2013 23:21:56 +0000 (16:21 -0700)]
* lisp/progmodes/sh-script.el (sh-mark-line, sh-learn-buffer-indent):
Occur buffers are read-only. http://bugs.debian.org/720775
Glenn Morris [Sun, 13 Oct 2013 23:01:20 +0000 (16:01 -0700)]
* configure.ac [alpha]: Explicit error in non-ELF case.
* doc/emacs/ack.texi (Acknowledgments): Comment out old alpha stuff.
* lisp/emacs-lisp/authors.el (authors-fixed-entries):
Comment out old alpha stuff.
Fixes: debbugs:15601
Dmitry Gutov [Sun, 13 Oct 2013 21:35:31 +0000 (00:35 +0300)]
* lisp/progmodes/ruby-mode.el (ruby-mode): Add `ruby-mode-set-encoding'
to `after-save-hook' instead of `before-save-hook'.
(ruby-mode-set-encoding): Use the value of coding system used to
write the file. Call `basic-save-buffer-1' after modifying the
buffer.
Alan Mackenzie [Sun, 13 Oct 2013 19:54:46 +0000 (19:54 +0000)]
Fix indentation/fontification of Java enum with "implements"/generic.
* progmodes/cc-engine.el (c-backward-over-enum-header): Extracted from
the three other places and enhanced to handle generics.
(c-inside-bracelist-p): Uses new function above.
* progmodes/cc-fonts.el (c-font-lock-declarations): Uses new function
above.
(c-font-lock-enum-tail): Uses new function above.
Xue Fuqiao [Sun, 13 Oct 2013 12:14:28 +0000 (20:14 +0800)]
NEWS tweak.
Kenichi Handa [Sun, 13 Oct 2013 11:59:25 +0000 (20:59 +0900)]
merge trunk
Kenichi Handa [Sun, 13 Oct 2013 11:55:00 +0000 (20:55 +0900)]
merge trunk
Xue Fuqiao [Sun, 13 Oct 2013 10:22:34 +0000 (18:22 +0800)]
Remove unnecessary @refill.
Glenn Morris [Sun, 13 Oct 2013 10:19:27 +0000 (06:19 -0400)]
Auto-commit of generated files.
Kenichi Handa [Sun, 13 Oct 2013 09:25:29 +0000 (18:25 +0900)]
international/mule-cmds.el (select-safe-coding-system): Remove a superfluous condition in chekcing whether a coding system is safe or not.
Oleh Krehel [Sun, 13 Oct 2013 05:30:23 +0000 (22:30 -0700)]
* lisp/replace.el (how-many): Fix rstart and !rend case.
Fixes: debbugs:15589
Andreas Politz [Sun, 13 Oct 2013 05:23:42 +0000 (22:23 -0700)]
* lisp/progmodes/sql.el (sql-add-product): Fix paren typo.
Fixes: debbugs:15435
Glenn Morris [Sun, 13 Oct 2013 05:20:15 +0000 (22:20 -0700)]
* menu-bar.el (menu-bar-update-buffers): Unify Buffers menu prompt string.
Fixes: debbugs:15576
Glenn Morris [Sun, 13 Oct 2013 05:17:42 +0000 (22:17 -0700)]
Doc fixes for text-scale-adjust
* lisp/face-remap.el (text-scale-adjust): Doc fix.
* doc/emacs/display.texi (Text Scale): Update text-scale-adjust details.
Fixes: debbugs:15434
Glenn Morris [Sun, 13 Oct 2013 00:31:19 +0000 (17:31 -0700)]
Use accented form of some names
* doc/emacs/ack.texi (Acknowledgments):
* doc/emacs/emacs.texi (Acknowledgments):
* doc/lispref/intro.texi (Acknowledgments): Use accented form of some names.
* lisp/emacs-lisp/authors.el (authors-aliases, authors-ignored-files):
Add some entries.
(authors-fixed-entries): Use accented form of name.
Glenn Morris [Sun, 13 Oct 2013 00:28:30 +0000 (17:28 -0700)]
ChangeLog fixes prompted by M-x authors
Stefan Monnier [Sat, 12 Oct 2013 20:40:50 +0000 (16:40 -0400)]
* lisp/progmodes/ruby-mode.el (ruby-smie-grammar): Add rule for paren-free
method calls (bug#bug#15594).
(ruby-smie--args-separator-p): New function.
(ruby-smie--forward-token, ruby-smie--backward-token): Use it to
recognize paren-free method calls.
Paul Eggert [Sat, 12 Oct 2013 20:00:38 +0000 (13:00 -0700)]
Merge from gnulib.
This incorporates:
2013-10-10 strtoumax: port to Solaris 8
2013-10-09 strtoimax, strtoumax: port to HP-UX 11.11
* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
* lib/inttypes.in.h, lib/strtoimax.c, m4/inttypes.m4, m4/strtoimax.m4:
* m4/strtoumax.m4:
Update from gnulib.
Eli Zaretskii [Sat, 12 Oct 2013 13:11:14 +0000 (16:11 +0300)]
Make the MinGW32 build compatible with MinGW runtime 4.x.
nt/inc/dirent.h (struct dirent) [__MINGW_MAJOR_VERSION >= 4]: Make
the layout of 'struct dirent' be compatible with MinGW32 runtime
versions 4.0 and later.
nt/inc/ms-w32.h (__MINGW_MAJOR_VERSION, __MINGW_MINOR_VERSION)
(__MINGW_PATCHLEVEL) [!__MINGW64_VERSION_MAJOR]: Define, if not
defined, but not for MinGW64.
(_USE_32BIT_TIME_T) [__MINGW64_VERSION_MAJOR]: Define, to force
use of 32-bit time_t type.
Glenn Morris [Sat, 12 Oct 2013 10:17:41 +0000 (06:17 -0400)]
Auto-commit of generated files.
Eli Zaretskii [Sat, 12 Oct 2013 09:00:21 +0000 (12:00 +0300)]
Update nt/INSTALL with respect to giflib.
Eli Zaretskii [Sat, 12 Oct 2013 08:48:31 +0000 (11:48 +0300)]
Avoid compilation warnings in image.c.
src/image.c (GIFLIB_MAJOR, GIFLIB_MINOR, GIFLIB_RELEASE): Move back
after inclusion of gif_lib.h, thus fixing compiler warnings caused
by 2013-10-10T19:15:33Z!eggert@cs.ucla.edu.
Stefan Monnier [Sat, 12 Oct 2013 01:10:25 +0000 (21:10 -0400)]
* lisp/isearch.el (isearch-pre-command-hook): Don't build in knowledge about
internals of universal-argument.
Dmitry Gutov [Fri, 11 Oct 2013 20:45:14 +0000 (23:45 +0300)]
* test/indent/ruby.rb: Add two more cases.
Stefan Monnier [Fri, 11 Oct 2013 18:29:18 +0000 (14:29 -0400)]
* configure.ac (LIBGNUTLS): Don't set LIBGNUTLS_* back to the empty
string when gnutls2 is installed but gnutls3 is not.
Eli Zaretskii [Fri, 11 Oct 2013 18:20:08 +0000 (21:20 +0300)]
Fix popping down a menu by a second mouse click.
lisp/menu-bar.el (tty-menu-navigation-map): Bind all menu-bar
sequences to tty-menu-exit -- this pops down a dropped menu on
second mouse click on the menu bar.
Eli Zaretskii [Fri, 11 Oct 2013 17:44:41 +0000 (20:44 +0300)]
Make the same key that opens TTY menus also exit the menu.
lisp/menu-bar.el (tty-menu-navigation-map): Remap F10 to tty-menu-exit.
Eli Zaretskii [Fri, 11 Oct 2013 15:42:06 +0000 (18:42 +0300)]
Support frame dimension changes while TTY menus are displayed.
src/xdisp.c (deep_copy_glyph_row): Handle the case that FROM and TO
have different dimensions.
src/dispnew.c (fill_up_frame_row_with_spaces): Now has external
visibility.
src/dispextern.h (fill_up_frame_row_with_spaces): Add prototype.
Fixes: debbugs:15575
Dmitry Antipov [Fri, 11 Oct 2013 15:30:21 +0000 (19:30 +0400)]
* term.c (tty_menu_show): Never return with unbalanced
specpdl. Use eassert for debugging check. Adjust style.
Eli Zaretskii [Fri, 11 Oct 2013 14:42:05 +0000 (17:42 +0300)]
Menu item selection on TTYs is now cyclical.
src/term.c (read_menu_input): Make selection of menu items
cyclical. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
(tty_menu_activate): Fix off-by-one error when computing max_y.
Ted Zlatanov [Fri, 11 Oct 2013 13:47:35 +0000 (09:47 -0400)]
Support GnuTLS v3 and set up its audit logging properly.
* configure.ac: Define HAVE_GNUTLS3 if GnuTLS v3 is found.
* src/gnutls.c (gnutls_audit_log_function): Add function for GnuTLS
audit logging (only used with GnuTLS 3.x) and enable it.
Dmitry Antipov [Fri, 11 Oct 2013 11:11:28 +0000 (15:11 +0400)]
* dispnew.c (redraw_frame): Remove useless #ifdef because
FRAME_MSDOS_P is a compile-time zero everywhere except MS-DOS.
Also, move TTY fflush to...
* term.c (tty_update_end): ...this function.
Eli Zaretskii [Fri, 11 Oct 2013 11:01:48 +0000 (14:01 +0300)]
Fix bug #15575 with crashes in TTY menus.
src/xdisp.c (display_tty_menu_item): Make sure we never write beyond
the end of the frame's glyph matrix.
src/term.c (tty_menu_display): Don't move cursor while overwriting
frame's glyphs with menu items. Limit the number of items
displayed to what can be shown on the available screen lines,
excluding the echo area.
(tty_menu_activate): Limit the Y coordinate allowed by
read_menu_input to the last screen line used for menu display.
Paul Eggert [Fri, 11 Oct 2013 06:32:29 +0000 (23:32 -0700)]
* lisp.h (eassume): New macro.
Also, include <verify.h>, for 'assume'.
* alloc.c (bool_vector_payload_bytes, Fmake_bool_vector)
(vroundup, vector_nbytes):
* data.c (bool_vector_spare_mask, bool_vector_binop_driver)
(Fbool_vector_not, Fbool_vector_count_matches)
(Fbool_vector_count_matches_at):
Use eassume, not eassert.
* casetab.c (set_identity, shuffle):
* composite.c (composition_gstring_put_cache):
* dispnew.c (update_frame_1):
* ftfont.c (ftfont_shape_by_flt):
* image.c (gif_load):
* intervals.c (offset_intervals):
* macfont.m (macfont_shape):
Remove calls to 'assume' that are no longer needed, because
--enable-gcc-warnings no longer generates bogus warnings
when these calls are removed.
Dmitry Antipov [Fri, 11 Oct 2013 03:55:26 +0000 (07:55 +0400)]
* xdisp.c (deep_copy_glyph_row): Remove unused locals.
Stefan Monnier [Fri, 11 Oct 2013 03:28:31 +0000 (23:28 -0400)]
* lisp/progmodes/sh-script.el: Provide simpl(e|istic) completion.
(explicit-shell-file-name): Declare.
(sh--vars-before-point, sh--cmd-completion-table): New functions.
(sh-completion-at-point-function): New function.
(sh-mode): Use it.
(sh-smie--keyword-p): Remove unused argument.
(sh-smie-sh-backward-token, sh-smie-rc-backward-token): Remove unused
vars.
(sh-set-shell): Always setup SMIE, even if we use the
old indentation code.
Dmitry Gutov [Fri, 11 Oct 2013 02:11:37 +0000 (05:11 +0300)]
* lisp/progmodes/ruby-mode.el (ruby-smie--implicit-semi-p): Split the
cases of ? and =.
(ruby-smie-rules): Simplify the "do" rule. The cases when the
predicate would return nil are almost non-existent.
(ruby-smie--redundant-do-p): Include "until" and "for" statements.
Dmitry Gutov [Fri, 11 Oct 2013 00:45:03 +0000 (03:45 +0300)]
* lisp/emacs-lisp/smie.el (smie--matching-block-data): Invalidate the
cache also after commands that modify the buffer but don't move
point.
Stefan Monnier [Thu, 10 Oct 2013 21:43:47 +0000 (17:43 -0400)]
* test/automated/ruby-mode-tests.el (ruby-with-temp-buffer): Move before
first use.
(ruby-should-indent): Use indent-according-to-mode.
(ruby-deftest-move-to-block): Use `declare'.
Stefan Monnier [Thu, 10 Oct 2013 21:42:38 +0000 (17:42 -0400)]
* src/fileio.c (Fsubstitute_in_file_name): Use substitute-env-in-file-name.
(Qsubstitute_env_in_file_name): New var.
(syms_of_fileio): Define it.
* lisp/env.el (substitute-env-in-file-name): New function.
(substitute-env-vars): Extend the meaning of the optional arg.
Eli Zaretskii [Thu, 10 Oct 2013 19:26:13 +0000 (22:26 +0300)]
Attempt to fix crashes per bug #15575.
src/xdisp.c (deep_copy_glyph_row): Assert that the 'used' counts of
FROM and TO are identical. Copy only the glyphs of TEXT_AREA.
src/term.c (save_and_enable_current_matrix): Don't allocate and
don't save margin areas.
(restore_desired_matrix): Don't restore margin areas.
(free_saved_screen): Don't free margin areas.
Paul Eggert [Thu, 10 Oct 2013 19:15:33 +0000 (12:15 -0700)]
* image.c: Pacify --enable-gcc-warnings.
(GIFLIB_MAJOR, GIFLIB_MINOR, GIFLIB_RELEASE, fn_GifErrorString):
#define only if used.
Eli Zaretskii [Thu, 10 Oct 2013 15:30:21 +0000 (18:30 +0300)]
MS-Windows follow-up to 2013-10-10T01:03:11Z!rgm@gnu.org: support giflib 5.x.
src/image.c (GIFLIB_MAJOR): Define to 4 if undefined.
(GIFLIB_MINOR, GIFLIB_RELEASE): Define to zero if undefined.
(GifErrorString) [GIFLIB_MAJOR >= 5]: Define a function pointer.
(gif_load): For giflib v5.x and later, display the error message
produced by giflib when its functions fail.
(syms_of_image) <Qlibgif_version> [HAVE_NTGUI]: New DEFSYM.
lisp/term/w32-win.el (dynamic-library-alist): Define separate lists
of GIF DLLs for versions before and after 5.0.0 of giflib.
Fixes: debbugs:15531
João Távora [Thu, 10 Oct 2013 14:59:09 +0000 (10:59 -0400)]
* vc/vc.el (vc-diff-build-argument-list-internal): If the file is
not locked, use last revision and current source as
defaults. (Bug#15569)
Masatake YAMATO [Thu, 10 Oct 2013 10:47:11 +0000 (19:47 +0900)]
* lisp/menu-bar.el (menu-bar-open): Don't use popup-menu if
menu-bar is hidden.
Glenn Morris [Thu, 10 Oct 2013 10:17:41 +0000 (06:17 -0400)]
Auto-commit of generated files.
Dmitry Antipov [Thu, 10 Oct 2013 10:06:17 +0000 (14:06 +0400)]
* keyboard.c (last_event_timestamp): Remove. For X selection and
GTK popup menus, it may be obtained from per-frame X display info.
(kbd_buffer_store_event_hold, kbd_buffer_get_event)
(process_special_events): Adjust users.
* keyboard.h (last_event_timestamp): Remove declaration.
* xmenu.c (xmenu_show, create_and_show_popup_menu): Lost last arg.
Use FRAME_DISPLAY_INFO (f)->last_user_time for gtk_menu_popup.
* menu.h (xmenu_show): Adjust prototype.
* menu.c (Fx_popup_menu): Adjust user.
* xselect.c (x_own_selection, x_get_foreign_selection)
(Fx_disown_selection_internal): Use dpyinfo->last_user_time.
Martin Rudalics [Thu, 10 Oct 2013 07:57:28 +0000 (09:57 +0200)]
Fix doc-string of pop-to-buffer-same-window. (Bug#15492)
* window.el (pop-to-buffer-same-window): Fix doc-string.
(Bug#15492)
Dmitry Antipov [Thu, 10 Oct 2013 06:48:42 +0000 (10:48 +0400)]
* keyboard.c (init_kboard): Now static. Add arg
to denote window system. Adjust comment.
(init_keyboard): Adjust user.
(allocate_kboard): New function.
(syms_of_keyboard):
* nsterm.m (ns_term_init):
* term.c (init_tty):
* w32term.c (w32_create_terminal):
* xterm.c (x_term_init): Use it.
* keyboard.h (init_kboard): Remove prototype.
(allocate_kboard): Add prototype.
Stefan Monnier [Thu, 10 Oct 2013 02:33:35 +0000 (22:33 -0400)]
* lisp/menu-bar.el (tty-menu-navigation-map): Reduce redundancy.
Glenn Morris [Thu, 10 Oct 2013 01:29:30 +0000 (21:29 -0400)]
* lib-src/make-docfile.c (search_lisp_doc_at_eol): Use int rather than char
with getc.
Fixes: debbugs:15481
Andrei Chitu [Thu, 10 Oct 2013 01:18:01 +0000 (21:18 -0400)]
* icalendar.el (icalendar-import-file): Fix interactive spec (tiny change)
Fixes: debbugs:15482
Glenn Morris [Thu, 10 Oct 2013 01:03:11 +0000 (21:03 -0400)]
* lisp/desktop.el (desktop-save): Default to saving in .emacs.d,
since PWD is no longer in desktop-path by default.
Fixes: debbugs:15319
Barry Fishman [Thu, 10 Oct 2013 00:37:44 +0000 (20:37 -0400)]
Handle giflib 5 changes (tiny change)
* configure.ac: Update for giflib 5.
* src/image.c (GIFLIB_MAJOR): Ensure it's defined.
(DGifOpen, DGifOpenFileName): Handle giflib 5 syntax. (Bug#15531)
Glenn Morris [Thu, 10 Oct 2013 00:32:36 +0000 (20:32 -0400)]
* lisp/menu-bar.el (menu-bar-options-menu): Remove text-mode auto-fill,
now that text mode has a menu with the same entry.
(menu-bar-text-mode-auto-fill): Remove now unused func.
* lisp/textmodes/text-mode.el (text-mode-map):
Use auto-fill help text from menu-bar.el.
John Anthony [Thu, 10 Oct 2013 00:24:12 +0000 (20:24 -0400)]
* lisp/textmodes/text-mode.el (text-mode-map): Add a menu (tiny change)
Fixes: debbugs:15562
Juri Linkov [Wed, 9 Oct 2013 23:52:46 +0000 (02:52 +0300)]
* lisp/isearch.el (isearch-pre-command-hook): Use this-single-command-keys
instead of this-command-keys. Add universal-argument-more and
universal-argument-minus to the list of prefix commands.
Fixes: debbugs:15568
Paul Eggert [Wed, 9 Oct 2013 22:39:57 +0000 (15:39 -0700)]
* fns.c (sxhash_bool_vector): Fix buffer read overrun.
Eli Zaretskii [Wed, 9 Oct 2013 20:18:38 +0000 (23:18 +0300)]
Fix minor problems in text-mode menu display.
src/term.c (tty_menu_activate): Flush the output stream after
showing the cursor, and don't mark the frame garbaged at exit from
the function. Fixes redisplay glitches when moving from one menu
to another.
Jan Djärv [Wed, 9 Oct 2013 18:50:14 +0000 (20:50 +0200)]
* nsfns.m (Fns_convert_utf8_nfd_to_nfc): Check input for valid UTF-8
or throw error.
Fixes: debbugs:15570
Glenn Morris [Wed, 9 Oct 2013 18:49:32 +0000 (14:49 -0400)]
* lisp/vc/vc-svn.el (vc-svn-create-repo): Expand paths in file://... url.
Fixes: debbugs:15446
Paul Eggert [Wed, 9 Oct 2013 17:56:58 +0000 (10:56 -0700)]
* intervals.c (temp_set_point_both): Move test into 'eassert',
for speed.
Paul Eggert [Wed, 9 Oct 2013 17:52:38 +0000 (10:52 -0700)]
* lisp.h (eassert): Don't use 'assume'.
Sometimes 'assume' wins in performance, and sometimes it loses,
so it shouldn't be used all the time. Perhaps we need two
flavors of 'eassert', one for where 'assume' is far more likely
to help or to hurt; but that can be done later.
Problem reported by Dmitry Andipov in
<http://lists.gnu.org/archive/html/emacs-devel/2013-10/msg00276.html>.
Also, don't include <verify.h>; no longer needed.