Ken Manheimer [Sun, 26 Jun 2011 16:47:39 +0000 (12:47 -0400)]
* allout-widgets.el (allout-widgets-post-command-business): Stop decorating
intermediate isearch matches. They're not being undecorated when an
isearch is continued past, and isearch automatically collapses them. This
leads to "widget leaks", where decorated items accumulate in collapsed
areas. Lines with lots of hidden widgets can slow down cursor travel,
substantially. Too much complicated machinery would be needed to ensure
undecoration, so we're doing without this nicety.
(allout-widgets-tally-string): Don't try to do a hash-table-count of
allout-widgets-tally when it's nil. This eliminates spurious "Error during
redisplay: (wrong-type-argument hash-table-p nil)" warnings in *Messages*
when allout-widgets-maintain-tally is t.
Martin Rudalics [Sun, 26 Jun 2011 16:17:30 +0000 (18:17 +0200)]
Fix some more display-buffer related bugs.
* window.el (display-buffer-normalize-argument): Rename to
display-buffer-normalize-arguments. Handle special meaning of
LABEL argument. Respect special-display-function when popping
up a new frame. Fix code searching for a window showing the
buffer on another frame.
(display-buffer-normalize-specifiers): Call
display-buffer-normalize-arguments.
(display-buffer-in-window): Don't undedicate the window if its
buffer remains the same.
Reported by Drew Adams <drew.adams@oracle.com>.
(display-buffer-alist): Add choice for same-window macro
specfier.
(display-buffer): Mention special meaning of LABEL argument in
doc-string. Fix quoting. Don't pop up a new frame even as
fallback.
Gnus developers [Sun, 26 Jun 2011 12:41:14 +0000 (12:41 +0000)]
Merge changes made in Gnus trunk.
gnus.texi (Summary Mail Commands): Document `gnus-summary-reply-to-list-with-original'.
auth-source.el (with-auth-source-epa-overrides): Fix compilation error with `find-file-hooks' on Emacs 22.
(with-auth-source-epa-overrides): Ugly hack to Wrap the `find-file-hook' things in `symbol-value' to avoid compilation warnings on all architectures.
spam.el (spam-stat): Require in a normal fashion without binding `spam-stat-install-hooks' to avoid compilation warnings.
spam-stat.el (spam-stat-install-hooks): Removed.
(spam-stat-install-hooks): Don't run automatically.
gnus-msg.el (gnus-summary-reply-to-list-with-original): New command and keystroke.
Chong Yidong [Sun, 26 Jun 2011 04:05:39 +0000 (00:05 -0400)]
New option for showing a diff in vc-revert (Bug#8927).
* vc/vc.el (vc-revert-show-diff): New defcustom.
(vc-diff-internal): New arg specifying diff buffer.
(vc-revert): Obey vc-revert-show-diff. If we show a diff, don't
reuse an existing *vc-diff* buffer.
Chong Yidong [Sun, 26 Jun 2011 03:40:40 +0000 (23:40 -0400)]
Fix handling of pending signals in wait_reading_process_output (Bug#8869).
* process.c (wait_reading_process_output): Bypass select if
waiting for a cell while ignoring keyboard input, and input is
pending. Suggested by Jan Djärv.
Glenn Morris [Sat, 25 Jun 2011 22:22:47 +0000 (15:22 -0700)]
Avoid some code duplication in diary-lib.el.
* lisp/calendar/diary-lib.el (diary-included-files): Doc fix.
(diary-include-files): New function, extracted from
diary-include-other-diary-files and diary-mark-included-diary-files.
(diary-include-other-diary-files, diary-mark-included-diary-files):
Just call diary-include-files.
(diary-mark-entries): Reset diary-included-files on first call.
Paul Eggert [Sat, 25 Jun 2011 08:40:38 +0000 (01:40 -0700)]
Use gnulib's dup2 module instead of rolling our own.
* Makefile.in (GNULIB_MODULES): Add dup2.
* configure.in: Do not check for dup2; gnulib does that now.
* lib/dup2.c, m4/dup2.m4: New files, from gnulib.
* src/sysdep.c (dup2) [!HAVE_DUP2]: Remove; gnulib now does this.
Martin Rudalics [Thu, 23 Jun 2011 08:58:45 +0000 (10:58 +0200)]
Fix display-buffer related bugs reported by Thierry Volpiatto.
* window.el (get-lru-window, get-mru-window)
(get-largest-window): Never return a minibuffer window.
(display-buffer-pop-up-window): Fix a bug that could lead to
reusing the minibuffer window.
(display-buffer): Pass original specifier argument to
display-buffer-function instead of the normalized one.
Reported by Thierry Volpiatto <thierry.volpiatto@gmail.com>.
Paul Eggert [Thu, 23 Jun 2011 06:31:41 +0000 (23:31 -0700)]
* macros.c: Integer and buffer overflow fixes.
* keyboard.h (struct keyboard.kbd_macro_bufsize):
* macros.c (Fstart_kbd_macro, store_kbd_macro_char):
Use ptrdiff_t, not int, for sizes.
Don't increment bufsize until after realloc succeeds.
Check for size-calculation overflow.
(Fstart_kbd_macro): Use EMACS_INT, not int, for XINT result.
Paul Eggert [Thu, 23 Jun 2011 05:34:52 +0000 (22:34 -0700)]
* lread.c (read_escape): Avoid int overflow.
(Fload, openp, read_buffer_size, read1)
(substitute_object_recurse, read_vector, read_list, map_obarray):
Use ptrdiff_t, not int, for sizes.
(read1): Use EMACS_INT, not int, for sizes.
Paul Eggert [Thu, 23 Jun 2011 00:55:55 +0000 (17:55 -0700)]
* lread.c: Integer overflow fixes.
(read_integer): Radix is now EMACS_INT, not int,
to improve quality of diagnostics for out-of-range radices.
Calculate buffer size correctly for out-of-range radices.
(read1): Check for integer overflow in radices, and in
read-circle numbers.
(smtpmail-try-auth-methods): If the user has stored a user name, then
query for the password first, instead of waiting for SMTP to give an
error message and the trying again.
Paul Eggert [Wed, 22 Jun 2011 18:15:23 +0000 (11:15 -0700)]
GLYPH_DEBUG fixes
The following patches are for when GLYPH_DEBUG && !XASSERT.
* dispextern.h (trace_redisplay_p, dump_glyph_string):
* dispnew.c (flush_stdout):
* xdisp.c (dump_glyph_row, dump_glyph_matrix, dump_glyph):
Mark as externally visible.
* dispnew.c (check_window_matrix_pointers): Now static.
* dispnew.c (window_to_frame_vpos):
* xfns.c (unwind_create_frame):
* xterm.c (x_check_font): Remove unused local.
* scroll.c (CHECK_BOUNDS):
* xfaces.c (cache_fache): Rename local to avoid shadowing.
* xfns.c, w32fns.c (image_cache_refcount, dpyinfo_refcount): Now static.
* xdisp.c (check_window_end): Now a no-op if !XASSERTS.
(debug_first_unchanged_at_end_vpos, debug_last_unchanged_at_beg_vpos)
(debug_dvpos, debug_dy, debug_delta, debug_delta_bytes, debug_end_vpos):
Now static.
(debug_method_add): Use va_list and vsprintf rather than relying
on undefined behavior with wrong number of arguments.
(dump_glyph, dump_glyph_row, Fdump_glyph_matrix):
Don't assume ptrdiff_t and EMACS_INT are the same width as int.
In this code, it's OK to assume C99 behavior for ptrdiff_t formats
since we're not interested in debugging glyphs with old libraries.
* xfaces.c (cache_face): Move debugging code earlier; this pacifies
GCC 4.6.0's static checking.
Martin Rudalics [Wed, 22 Jun 2011 07:12:18 +0000 (09:12 +0200)]
Remove preset entries for pop-up-frame-alist from window.el defaults.
* window.el (display-buffer-default-specifiers)
(display-buffer-alist): Remove entries for pop-up-frame-alist.
Suggested by Katsumi Yamaoka <yamaoka@jpl.org>.
* frame.el (pop-up-frame-alist, pop-up-frame-function)
(special-display-frame-alist, special-display-popup-frame):
Remove duplicate declarations. These are now in window.el.
Rewritten smtpmail.el to use `open-network-stream' to do STARTTLS
upgrades opportunistically, and to only use auth-source for all
credentials. Mostly backwards compatible, but
`smtpmail-auth-credentials' and `smtpmail-starttls-credentials' are
removed, and users who relied on those will have to put the
credentials in ~/.authinfo instead.
David Reitter [Tue, 21 Jun 2011 18:45:36 +0000 (11:45 -0700)]
ns-win: set ApplePressAndHoldEnabled to NO as it is unsupported.
This is in preparation for OS X "Lion"; it is a stop-gap solution
until this new input mechanism is supported correctly.