Chong Yidong [Sun, 13 Mar 2011 22:25:16 +0000 (18:25 -0400)]
Fix BUF_* macros to handle indirect buffers properly (Bug#8219).
* buffer.h (BUF_BEGV, BUF_BEGV_BYTE, BUF_ZV, BUF_ZV_BYTE, BUF_PT)
(BUF_PT_BYTE): Rewrite to handle indirect buffers (Bug#8219).
These macros can no longer be used for assignment.
* buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Assign
struct members directly, instead of using BUF_BEGV etc.
(record_buffer_markers, fetch_buffer_markers): New functions for
recording and fetching special buffer markers.
(set_buffer_internal_1, set_buffer_temp): Use them.
* lread.c (unreadchar): Use SET_BUF_PT_BOTH.
* insdel.c (adjust_point): Use SET_BUF_PT_BOTH.
* intervals.c (temp_set_point_both): Use SET_BUF_PT_BOTH.
(get_local_map): Use SET_BUF_BEGV_BOTH and SET_BUF_ZV_BOTH.
* xdisp.c (hscroll_window_tree):
(reconsider_clip_changes): Use PT instead of BUF_PT.
Ted Zlatanov [Sun, 13 Mar 2011 22:17:17 +0000 (17:17 -0500)]
Add `auth-source-search' integration for LDAP searches.
* net/ldap.el (ldap-search-internal): Add `auth-source-search'
integration for LDAP parameters. The host, base, user or binddn,
and secret tokens can be specified in a netrc file, for instance.
This is optional because an `auth-source' parameter must be
specified in the search attributes.
Paul Eggert [Sun, 13 Mar 2011 08:31:16 +0000 (00:31 -0800)]
* gtkutil.c (int_gtk_range_get_value): New function, which avoids a diagnostic
from gcc -Wbad-function-cast.
(xg_set_toolkit_scroll_bar_thumb): Use it.
(xg_tool_bar_callback, xg_tool_item_stale_p): Rewrite to avoid
diagnostic from gcc -Wbad-function-cast.
Teodor Zlatanov [Sun, 13 Mar 2011 04:07:38 +0000 (04:07 +0000)]
Merge changes made in Gnus trunk.
auth.texi (Help for developers): Update docs to explain that the :save-function will only run the first time.
auth-source.el (auth-source-format-prompt): Always convert the value to a string to avoid evaluating non-string arguments.
(auth-source-netrc-create): Offer default properly, not as initial content in `read-string'.
(auth-source-netrc-saver): Use a cache keyed by file name and MD5 hash of line to determine if we've been run before. If so, don't run again, but print a trivial message to indicate the cache was hit instead.
Michael Albinus [Sat, 12 Mar 2011 13:26:19 +0000 (14:26 +0100)]
* net/tramp.el (tramp-progress-reporter-update): Use
`tramp-compat-funcall'.
(tramp-handle-start-file-process): Use `tramp-compat-process-get'.
(tramp-handle-insert-file-contents): Make `file-remote-p' call
compatible.
(tramp-open-connection-setup-interactive-shell): Use
`tramp-compat-process-put'.
* net/tramp-compat.el (tramp-compat-process-get)
(tramp-compat-process-put): New defuns.
Eli Zaretskii [Sat, 12 Mar 2011 12:03:24 +0000 (14:03 +0200)]
Make termcap.c implementations consistent with tparam.h prototypes.
src/termcap.c [MSDOS]: Include "msdos.h.
(find_capability, tgetnum, tgetflag, tgetstr, tputs, tgetent):
Constify `char *' arguments and their references according to
prototypes in tparam.h.
src/deps.mk (termcap.o): Depend on tparam.h and msdos.h.
Gnus developers [Sat, 12 Mar 2011 08:53:34 +0000 (08:53 +0000)]
Merge changes made in Gnus trunk.
gnus-sync.el (gnus-sync-install-hooks, gnus-sync-unload-hook): Don't install `gnus-sync-read' to any hooks by default. It's buggy. The user will have to run `gnus-sync-read' manually and wait for Cloudy Gnus.
mm-uu.el (mm-uu-type-alist): Add support for diff starting with "=== modified file".
Paul Eggert [Sat, 12 Mar 2011 06:49:53 +0000 (22:49 -0800)]
Improve quality of tests for time stamp overflow. For example,
without this patch (encode-time 0 0 0 1 1 1152921504606846976)
returns the obviously-bogus value (-948597 62170) on my RHEL 5.5
x86-64 host. With it, it reports time overflow.
* deps.mk (editfns.o): Depend on ../lib/intprops.h.
* editfns.c: Include limits.h and intprops.h.
(TIME_T_MIN, TIME_T_MAX): New macros.
(time_overflow): Move earlier, to before first use.
(hi_time, lo_time): New functions, for an accurate test for
out-of-range times.
(Fcurrent_time, Fget_internal_run_time, make_time): Use them.
(Fget_internal_run_time): Don't assume time_t fits in int.
(make_time): Use list2 instead of Fcons twice.
(Fdecode_time): More accurate test for out-of-range times.
(check_tm_member): New function.
(Fencode_time): Use it, to test for out-of-range times.
Stefan Monnier [Sat, 12 Mar 2011 04:29:22 +0000 (23:29 -0500)]
* lisp/progmodes/compile.el (compilation--previous-directory): Fix up
various nil/dead-marker mismatches.
(compilation-directory-properties, compilation-error-properties):
Don't call it at a position past the one we're about to change.
Ken Manheimer [Fri, 11 Mar 2011 18:46:12 +0000 (13:46 -0500)]
* allout-widgets.el (allout-widgets-tally) Initialize allout-widgets-tally
as a hash table rather than nil to prevent mode-line redisplay warnings.
Also, clarify the module description and fix a comment typoo (sic).
Eli Zaretskii [Fri, 11 Mar 2011 12:19:08 +0000 (14:19 +0200)]
Fix comparisons of file ownership on MS-Windows for the Administrator user.
lisp/files.el (file-ownership-preserved-p): Pass `integer' as an
explicit 2nd argument to `file-attributes'. If the file's owner
is the Administrators group on Windows, and the current user is
Administrator, consider that a match.
lisp/server.el (server-ensure-safe-dir): Consider server directory
safe on MS-Windows if its owner is the Administrators group while
the current Emacs user is Administrator. Use `=' to compare
numerical UIDs, since they could be integers or floats.
Eli Zaretskii [Fri, 11 Mar 2011 09:41:56 +0000 (11:41 +0200)]
Fix MS-Windows build broken by 2011-03-11T07:24:21Z!eggert@cs.ucla.edu.
src/term.c (encode_terminal_code): Now external again, used by
w32console.c and msdos.c.
src/termhooks.h (encode_terminal_code): Declare prototype.
src/msdos.c (encode_terminal_code): Don't declare prototype.
src/makefile.w32-in ($(BLD)/term.$(O), ($(BLD)/tparam.$(O)): Depend
on $(SRC)/tparam.h, see 2011-03-11T07:24:21Z!eggert@cs.ucla.edu.
Chong Yidong [Thu, 10 Mar 2011 23:40:46 +0000 (18:40 -0500)]
Fix package.el handling of version numbers like 1.0pre6.
* lisp/emacs-lisp/package.el (package-version-join): Impose a standard
string representation for pre/alpha/beta version lists.
(package-unpack-single): Standardize the directory name by passing
it through package-version-join.
Paul Eggert [Thu, 10 Mar 2011 01:28:06 +0000 (17:28 -0800)]
* lisp.h (GCPRO1_VAR, UNGCPRO_VAR): New macros,
so that the caller can use some name other than gcpro1.
(GCPRO1, UNGCPRO): Reimplement in terms of the new macros.
(Fx_create_frame, x_create_tip_frame, Fx_show_tip):
(Fx_backspace_delete_keys_p): Rename locals to avoid shadowing.
Some of these renamings use the new GCPRO1_VAR and UNGCPRO_VAR
macros.
Ken Manheimer [Wed, 9 Mar 2011 20:48:56 +0000 (15:48 -0500)]
* allout.el Summary: Change so yank of distinctive-bullet items preserves
the existing header prefix, rebulleting it if necessary, rather than
replacing it. This is necessary for proper operation of cooperative addons
like allout-widgets.
(allout-make-topic-prefix) (allout-rebullet-heading): Change SOLICIT arg to
INSTEAD, and interpret additionally a string value as alternate bullet to
be used, instead of prompting the user for a bullet character.