mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-04-27 08:43:40 -07:00
Merge from emacs-24
This commit is contained in:
commit
4dc7c8d579
12 changed files with 74 additions and 28 deletions
|
|
@ -1,3 +1,34 @@
|
|||
2012-07-17 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
Remove FILE_SYSTEM_CASE.
|
||||
* s/msdos.h (FILE_SYSTEM_CASE): Don't define.
|
||||
|
||||
* fileio.c (FILE_SYSTEM_CASE): Don't define.
|
||||
(Ffile_name_directory, Fexpand_file_name): Don't use FILE_SYSTEM_CASE.
|
||||
Fixes problems on MS-DOS with Vtemp_file_name_pattern when
|
||||
call-process-region passes it through expand-file-name.
|
||||
|
||||
* dired.c (file_name_completion): Don't use FILE_SYSTEM_CASE.
|
||||
|
||||
2012-07-17 Andreas Schwab <schwab@linux-m68k.org>
|
||||
|
||||
Fix crash when creating indirect buffer (Bug#11917)
|
||||
* buffer.c (buffer_lisp_local_variables): Add argument CLONE.
|
||||
Don't handle unbound variables specially if non-zero.
|
||||
(Fbuffer_local_variables): Pass zero.
|
||||
(clone_per_buffer_values): Pass non-zero.
|
||||
|
||||
2012-07-17 Andreas Schwab <schwab@linux-m68k.org>
|
||||
|
||||
* gnutls.c (emacs_gnutls_handshake): Revert last change. Add QUIT
|
||||
to make the loop interruptible.
|
||||
|
||||
2012-07-17 Andreas Schwab <schwab@linux-m68k.org>
|
||||
|
||||
* gnutls.c (emacs_gnutls_handshake): Only retry if
|
||||
GNUTLS_E_INTERRUPTED.
|
||||
|
||||
2012-07-17 Eli Zaretskii <eliz@gnu.org>
|
||||
2012-07-17 Dmitry Antipov <dmantipov@yandex.ru>
|
||||
|
||||
Cleanup and convert miscellaneous checks to eassert.
|
||||
|
|
|
|||
14
src/buffer.c
14
src/buffer.c
|
|
@ -153,7 +153,7 @@ static void alloc_buffer_text (struct buffer *, ptrdiff_t);
|
|||
static void free_buffer_text (struct buffer *b);
|
||||
static struct Lisp_Overlay * copy_overlays (struct buffer *, struct Lisp_Overlay *);
|
||||
static void modify_overlay (struct buffer *, ptrdiff_t, ptrdiff_t);
|
||||
static Lisp_Object buffer_lisp_local_variables (struct buffer *);
|
||||
static Lisp_Object buffer_lisp_local_variables (struct buffer *, int);
|
||||
|
||||
/* For debugging; temporary. See set_buffer_internal. */
|
||||
/* Lisp_Object Qlisp_mode, Vcheck_symbol; */
|
||||
|
|
@ -487,7 +487,7 @@ clone_per_buffer_values (struct buffer *from, struct buffer *to)
|
|||
|
||||
/* Get (a copy of) the alist of Lisp-level local variables of FROM
|
||||
and install that in TO. */
|
||||
BVAR (to, local_var_alist) = buffer_lisp_local_variables (from);
|
||||
BVAR (to, local_var_alist) = buffer_lisp_local_variables (from, 1);
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -1012,10 +1012,12 @@ buffer_local_value_1 (Lisp_Object variable, Lisp_Object buffer)
|
|||
|
||||
/* Return an alist of the Lisp-level buffer-local bindings of
|
||||
buffer BUF. That is, don't include the variables maintained
|
||||
in special slots in the buffer object. */
|
||||
in special slots in the buffer object.
|
||||
If CLONE is zero elements of the form (VAR . unbound) are replaced
|
||||
by VAR. */
|
||||
|
||||
static Lisp_Object
|
||||
buffer_lisp_local_variables (struct buffer *buf)
|
||||
buffer_lisp_local_variables (struct buffer *buf, int clone)
|
||||
{
|
||||
Lisp_Object result = Qnil;
|
||||
register Lisp_Object tail;
|
||||
|
|
@ -1035,7 +1037,7 @@ buffer_lisp_local_variables (struct buffer *buf)
|
|||
if (buf != current_buffer)
|
||||
val = XCDR (elt);
|
||||
|
||||
result = Fcons (EQ (val, Qunbound)
|
||||
result = Fcons (!clone && EQ (val, Qunbound)
|
||||
? XCAR (elt)
|
||||
: Fcons (XCAR (elt), val),
|
||||
result);
|
||||
|
|
@ -1064,7 +1066,7 @@ No argument or nil as argument means use current buffer as BUFFER. */)
|
|||
buf = XBUFFER (buffer);
|
||||
}
|
||||
|
||||
result = buffer_lisp_local_variables (buf);
|
||||
result = buffer_lisp_local_variables (buf, 0);
|
||||
|
||||
/* Add on all the variables stored in special slots. */
|
||||
{
|
||||
|
|
|
|||
|
|
@ -470,9 +470,6 @@ file_name_completion (Lisp_Object file, Lisp_Object dirname, int all_flag, int v
|
|||
|
||||
CHECK_STRING (file);
|
||||
|
||||
#ifdef FILE_SYSTEM_CASE
|
||||
file = FILE_SYSTEM_CASE (file);
|
||||
#endif
|
||||
bestmatch = Qnil;
|
||||
encoded_file = encoded_dir = Qnil;
|
||||
GCPRO5 (file, dirname, bestmatch, encoded_file, encoded_dir);
|
||||
|
|
|
|||
|
|
@ -84,10 +84,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include "commands.h"
|
||||
|
||||
#ifndef FILE_SYSTEM_CASE
|
||||
#define FILE_SYSTEM_CASE(filename) (filename)
|
||||
#endif
|
||||
|
||||
/* Nonzero during writing of auto-save files. */
|
||||
static int auto_saving;
|
||||
|
||||
|
|
@ -334,7 +330,6 @@ Given a Unix syntax file name, returns a string ending in slash. */)
|
|||
return STRINGP (handled_name) ? handled_name : Qnil;
|
||||
}
|
||||
|
||||
filename = FILE_SYSTEM_CASE (filename);
|
||||
#ifdef DOS_NT
|
||||
beg = alloca (SBYTES (filename) + 1);
|
||||
memcpy (beg, SSDATA (filename), SBYTES (filename) + 1);
|
||||
|
|
@ -861,7 +856,6 @@ filesystem tree, not (expand-file-name ".." dirname). */)
|
|||
UNGCPRO;
|
||||
}
|
||||
}
|
||||
name = FILE_SYSTEM_CASE (name);
|
||||
multibyte = STRING_MULTIBYTE (name);
|
||||
if (multibyte != STRING_MULTIBYTE (default_directory))
|
||||
{
|
||||
|
|
|
|||
|
|
@ -86,10 +86,6 @@ You lose; /* Emacs for DOS must be compiled with DJGPP */
|
|||
:se=</SO>:so=<SO>:us=<UL>:ue=</UL>:md=<BD>:mh=<DIM>:mb=<BL>:mr=<RV>:me=<NV>:\
|
||||
:AB=<BG %d>:AF=<FG %d>:op=<DefC>:"
|
||||
|
||||
/* Define this to a function (Fdowncase, Fupcase) if your file system
|
||||
likes that. */
|
||||
#define FILE_SYSTEM_CASE Fmsdos_downcase_filename
|
||||
|
||||
/* Define this to be the separator between devices and paths. Used by
|
||||
lisp.h to define IS_DEVICE_SEP. */
|
||||
#define DEVICE_SEP ':'
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue