1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-04-06 14:22:31 -07:00
Commit graph

34066 commits

Author SHA1 Message Date
Paul Eggert
84cc1ab625 * coding.c (Qmac): Now static. 2012-12-30 13:34:39 -08:00
Jan Djärv
8b745d925b Check for deprecated gtk tearoff menu item in configure.
* configure.ac: Check for GtkHandlebox.
Check for GtkTearoffMenuItem.

* src/gtkutil.c (TOOLBAR_TOP_WIDGET): New macro.
(xg_pack_tool_bar): Use TOOLBAR_TOP_WIDGET, condition out use of
handlebox_widget.  Set toolbar_in_hbox to false/true, set
toolbar_is_packed to true.
(xg_update_tool_bar_sizes): Use widget returned by TOOLBAR_TOP_WIDGET.
(update_frame_tool_bar): Check toolbar_is_packed for packing.
Show all on TOOLBAR_TOP_WIDGET.
(free_frame_tool_bar): Check toolbar_is_packed.  Use widget returned
by TOOLBAR_TOP_WIDGET.
(xg_change_toolbar_position): Use widget returned by TOOLBAR_TOP_WIDGET.
Check toolbar_is_packed.
(xg_have_tear_offs, tearoff_remove, tearoff_activate): Condition on
HAVE_GTK_TEAROFF_MENU_ITEM_NEW.
(xg_have_tear_offs): When ! HAVE_GTK_TEAROFF_MENU_ITEM_NEW, return
false.
(create_menus): Create tearoff only if HAVE_GTK_TEAROFF_MENU_ITEM_NEW.
(xg_update_menubar): Update title only if
HAVE_GTK_TEAROFF_MENU_ITEM_NEW.
(xg_update_submenu): Skip tearoff only if
HAVE_GTK_TEAROFF_MENU_ITEM_NEW.
(xg_initialize): Initialize xg_detached_menus only if
HAVE_GTK_TEAROFF_MENU_ITEM_NEW.
2012-12-30 20:08:15 +01:00
Jan Djärv
5a1d858bbc Check for deprecated gtk_handle_box in configure.
* configure.ac: Check for GtkHandlebox.

* src/gtkutil.c (TOOLBAR_TOP_WIDGET): New macro.
(xg_pack_tool_bar): Use TOOLBAR_TOP_WIDGET, condition out use of
handlebox_widget.  Set toolbar_in_hbox to false/true, set
toolbar_is_packed to true.
(xg_update_tool_bar_sizes): Use widget returned by TOOLBAR_TOP_WIDGET.
(update_frame_tool_bar): Check toolbar_is_packed for packing.
Show all on TOOLBAR_TOP_WIDGET.
(free_frame_tool_bar): Check toolbar_is_packed.  Use widget returned
by TOOLBAR_TOP_WIDGET.
(xg_change_toolbar_position): Use widget returned by TOOLBAR_TOP_WIDGET.
Check toolbar_is_packed.

* src/xterm.h (struct x_output): Surround handlebox_widget with
#ifdef HAVE_GTK_HANDLE_BOX_NEW.  toolbar_is_packed is new,
toolbar_in_hbox is bool.
2012-12-30 19:44:00 +01:00
Glenn Morris
d5e5e7b411 Merge from emacs-24; up to 2012-12-05T00:13:56Z!yamaoka@jpl.org 2012-12-30 10:09:01 -08:00
Andreas Schwab
2550c6e404 Properly configure GNUstep libraries
* configure.ac (TEMACS_LDFLAGS2): Don't define.
(LIBS_GNUSTEP): Set for GNUstep and substitute.
(LD_SWITCH_SYSTEM_TEMACS): Don't set for GNUstep.

* src/Makefile.in (TEMACS_LDFLAGS2): Remove.
(LIBS_GNUSTEP): Define.
(LIBES): Add $(LIBS_GNUSTEP).
(temacs$(EXEEXT)): Use $(LDFLAGS) instead of $(TEMACS_LDFLAGS2).
2012-12-29 20:37:32 +01:00
Eli Zaretskii
8d23a33120 Improve copy-file diagnostics on MS-Windows.
src/fileio.c (Fcopy_file) [WINDOWSNT]: Improve diagnostics when CopyFile
 fails by looking at what GetLastError returns.
2012-12-29 19:47:39 +02:00
Eli Zaretskii
c1fea2c0d2 Fix return values of set-file-acl and set-file-selinux-context when ENOTSUP.
Fixes: debbugs:13298
2012-12-29 19:02:34 +02:00
Andreas Schwab
39a035e8aa Indent 2012-12-29 16:28:42 +01:00
Eli Zaretskii
ccad023bc3 Fix bug #13298 with failed backups by falling back on set-file-modes.
src/fileio.c (Fset_file_selinux_context, Fset_file_acl): Return t if
 file's SELinux context or ACLs successfully set, nil otherwise.

 lisp/files.el (backup-buffer-copy, basic-save-buffer-2): If
 set-file-extended-attributes fails, fall back on set-file-modes
 instead of signaling an error.

 doc/lispref/files.texi (Changing Files): Document the return values of
 set-file-selinux-context and set-file-acl.
2012-12-29 16:32:36 +02:00
Eli Zaretskii
e7ae8039c3 More cleanup in handling subprocess exiting on MS-Windows.
src/w32proc.c (reader_thread): Avoid passing NULL handles to
 SetEvent and WaitForSingleObject.
2012-12-29 12:09:49 +02:00
Eli Zaretskii
d6cae7321e More improvements in 'struct glyph' comments. 2012-12-29 11:24:13 +02:00
Paul Eggert
7456e13fa9 Port EXTERNALLY_VISIBLE to Clang 3.2.
* conf_post.h (__has_attribute): New macro.
(EXTERNALLY_VISIBLE): Use it.  This ports to Clang 3.2.
2012-12-27 19:13:47 -08:00
Eli Zaretskii
7a3a74936f Fix bug #13277 with TTY cursor positioning in a line with overlay arrow.
src/xdisp.c (set_cursor_from_row): Don't confuse a truncation or
 continuation glyph on a TTY with an indication of an empty line.
 src/dispextern.h: Improve commentary to glyph->charpos and
 glyph->object.
2012-12-27 19:29:14 +02:00
Glenn Morris
82e2a1f054 Merge from emacs-24; up to 2012-12-03T21:07:47Z!eggert@cs.ucla.edu 2012-12-27 00:21:08 -08:00
Glenn Morris
1ab0c851fc Document cygwin-convert-file-name-{to|from}-windows
* doc/lispref/files.texi (File Names): Mention Cygwin conversion functions.

* src/cygw32.c (Fcygwin_convert_file_name_to_windows)
(Fcygwin_convert_file_name_from_windows): Doc fixes.

* etc/NEWS: Related markup.
2012-12-26 23:55:14 -08:00
Dmitry Antipov
8855dfa5d5 * print.c (print_object): Fix last change. 2012-12-26 19:46:51 +04:00
Dmitry Antipov
6cda572a0f * print.c (print_object): If Lisp_Save_Value object's pointer
is the address of a memory area containing Lisp_Objects, try
to print them.
* alloc.c (valid_lisp_object_p): Adjust comment.
2012-12-26 19:40:19 +04:00
Dmitry Antipov
8847a0de5b * lisp.h (toplevel): Add two notices to the comment about
defining a new Lisp data type.
2012-12-26 18:10:11 +04:00
Dmitry Antipov
4b298d5a3e * keyboard.c (record_asynch_buffer_change): Initialize an event
only if it's really needed.
* frame.h (enum output_method): Remove output_mac member since
it's a leftover from the deleted code.
* frame.c (Fframep): Adjust user here ...
* terminal.c (Fterminal_live_p): ... and here.
* coding.c (Qmac): Now here because it's only used to denote
end-of-line encoding type.
(syms_of_coding): DEFSYM it.
* frame.h (Qmac): Remove duplicated declaration.
2012-12-26 13:40:45 +04:00
Paul Eggert
12384b01a9 * window.c (select_window_1): Now static. 2012-12-25 18:45:43 -08:00
Eli Zaretskii
f1665bdc87 Fix window-body-width on text terminals.
src/window.c (window_body_cols): Subtract display margins from the
 window body width on TTYs as well.  See
 http://lists.gnu.org/archive/html/help-gnu-emacs/2012-12/msg00317.html
 for the original report.
2012-12-25 19:37:29 +02:00
Eli Zaretskii
b764d018bc Avoid compiler warnings in w32.c:acl_to_text. 2012-12-25 19:14:23 +02:00
Dmitry Antipov
cd78d9b191 * xterm.h (struct x_output): Remove toolbar_detached member since it's
set but never used.
* gtkutil.c (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
(xg_create_tool_bar): Adjust users.
2012-12-25 19:07:59 +04:00
Dmitry Antipov
9a0d4f34c6 * xdisp.c (redisplay_window): Remove inner local variable
because the outer shadowed one has the same meaning.
2012-12-25 15:37:21 +04:00
Eli Zaretskii
f5c81c80c1 Fix bug #13262 with crashes in completion on MS-Windows with non-ASCII filenames.
src/fileio.c (file_name_as_directory, directory_file_name): Accept
 an additional argument MULTIBYTE to indicate whether the input C
 came from a multibyte or a unibyte Lisp string; all callers
 adjusted.  Don't assume the input string is always multibyte.
 (Ffile_name_directory) [DOS_NT]: Handle unibyte strings correctly:
 don't ENCODE_FILE them, and return a unibyte string if the input
 was unibyte.
 (Fexpand_file_name): Don't mix unibyte with multibyte strings, and
 don't assume the input strings will always be multibyte.  If the
 input strings are multibyte, decode strings obtained from C
 library functions.
2012-12-24 18:15:13 +02:00
Dmitry Antipov
2944d406db * buffer.c (Fset_buffer_modified_p): Use buffer_window_count
to check whether the buffer is displayed in some window.
* xdisp.c (message_dolog): Likewise.
2012-12-24 16:21:42 +04:00
Dmitry Antipov
f9e7c67e4c * buffer.h (BUF_COMPACT): New macro to follow the common style.
* buffer.c (Fget_buffer_create): Use it to set compact field of
struct buffer_text to avoid accessing an uninitialized value
when compact_buffer is called for the first time.
(compact_buffer): Use convenient BUF_COMPACT and BUF_MODIFF.
2012-12-24 15:41:28 +04:00
Eli Zaretskii
40ff07a5a0 Don't fail in acl_set_file on MS-Windows if the operation is a no-op.
src/w32.c (acl_set_file): If setting the file security descriptor
 fails, and the new DACL is identical to the existing one, silently
 return success.  This fixes problems for users backing up their
 own files without having the necessary privileges for setting
 security descriptors.
2012-12-23 19:16:33 +02:00
Eli Zaretskii
299614f3bc Improve handling of subprocess shutdown on MS-Windows.
src/w32proc.c (reader_thread): Do not index fd_info[] with negative
 values.
 (reader_thread): Exit when cp->status becomes STATUS_READ_ERROR
 after WaitForSingleObject returns normally.  This expedites reader
 thread shutdown when delete_child triggers it.
 (reap_subprocess): More accurate commentary for why we call
 delete_child only when cp->fd is negative.
 src/w32.c (sys_close): Do not call delete_child on a subprocess
 whose handle is not yet closed.  Instead, set its file descriptor
 to a negative value, so that reap_subprocess will call
 delete_child on that subprocess when its SIGCHLD arrives.  This
 avoids closing handles used for communications between sys_select
 and reader_thread, which doesn't give sys_select a chance to
 notice that the process exited and invoke the SIGCHLD handler for
 it.
2012-12-23 19:06:58 +02:00
Jan Djärv
cf162aee2b * nsfns.m (Fns_do_applescript): Run event loop until script has
been executed.
(ns_run_ascript): Chech as_script for nil, set to nil after
executing script.

Fixes: debbugs:12969
2012-12-23 13:35:37 +01:00
Glenn Morris
00afe3a454 Merge from emacs-24; up to 2012-12-02T06:22:32Z!cyd@gnu.org 2012-12-22 11:09:52 -08:00
Eli Zaretskii
b2faf49cd9 Support 'fullscreen' frame parameter on MS-Windows.
src/w32term.c (w32fullscreen_hook): New function.
 (w32_create_terminal): Plug it into the terminal's fullscreen_hook.
2012-12-22 15:22:25 +02:00
Martin Rudalics
94900bfe14 Reword doc and doc-string of select-window (Bug#13248).
* window.c (Fselect_window): Reword doc-string.
* windows.texi (Selecting Windows): Reword description of
select-window.
2012-12-22 11:12:52 +01:00
Glenn Morris
a4b0cca119 Merge from emacs-24; up to 2012-12-01T13:25:13Z!cyd@gnu.org 2012-12-21 11:32:43 -08:00
Eli Zaretskii
bb085aed95 src/fileio.c (Finsert_file_contents): Doc fix. 2012-12-21 13:52:18 +02:00
Eli Zaretskii
7efa3fb357 Possibly fix bug #13086 with losing track of subprocesses on MS-Windows.
src/w32proc.c (new_child, delete_child, find_child_pid): For a
 subprocess, consider its slot being in use as long as its process
 handle (procinfo.hProcess) is not NULL.  This avoids reusing the
 slot when a new process is started immediately after killing
 another one, without waiting enough time for the first process to
 be reaped and resources allocated for it be orderly freed.
 Suggested by Fabrice Popineau <fabrice.popineau@supelec.fr>.
2012-12-21 13:21:35 +02:00
Chong Yidong
c1f02afadf * buffer.c (Fset_buffer_major_mode): Doc fix.
Fixes: debbugs:13231
2012-12-21 16:04:27 +08:00
Chong Yidong
34b4b7eb7e Make read-char-by-name signal an error for invalid input.
* international/mule-cmds.el (read-char-by-name): Signal an error
if the user does not supply a valid character.

* editfns.c (Finsert_char): Since read-char-by-name now signals an
error for invalid chars, don't check for a nil return value.

Fixes: debbugs:13177
2012-12-21 15:51:33 +08:00
Dmitry Antipov
1300288527 Avoid calls to CHAR_TO_BYTE if byte position is known.
* editfns.c (make_buffer_string_both): Use move_gap_both.
(Fbuffer_string): Use make_buffer_string_both.
* marker.c (buf_charpos_to_bytepos): Convert to eassert.
Adjust comment.
(buf_bytepos_to_charpos): Likewise.
(charpos_to_bytepos): Remove.
* fileio.c (Finsert_file_contents): Use move_gap_both.
* search.c (Freplace_match): Likewise.
* process.c (process_send_region): Likewise. Use convenient
names for byte positions.
* lisp.h (charpos_to_bytepos): Remove prototype.
* indent.c (scan_for_column): Use CHAR_TO_BYTE.
* insdel.c (move_gap): Likewise.
2012-12-20 20:09:05 +04:00
Paul Eggert
99e9311c31 * xdisp.c (redisplay_internal): Remove now-unused local. 2012-12-20 06:57:40 -08:00
Stefan Monnier
e02230bf34 * src/xdisp.c (select_frame_for_redisplay, ensure_selected_frame): Remove.
(redisplay_internal): Don't bother selecting the frame to get the
proper value of frame-local variables.
2012-12-20 09:03:34 -05:00
Dmitry Antipov
1687fb14cd * textprop.c (set_text_properties_1): Do not allow NULL interval.
Rename 4th argument since it may be buffer or string.  Adjust comment.
* intervals.c (graft_intervals_info_buffer): Find an interval here.
2012-12-20 12:49:21 +04:00
Dmitry Antipov
a2f07cd282 * coding.c (Fdetect_coding_region): Do not check start and end with
CHECK_NUMBER_COERCE_MARKER since validate_region does that itself.
(code_convert_region): Likewise.
2012-12-19 19:52:48 +04:00
Paul Eggert
3f781c75ac Spelling fix. 2012-12-19 05:56:49 -08:00
Eli Zaretskii
474d441e12 Follow symlinks in MS-Windows emulations of ACL functions.
src/w32.c (acl_get_file, acl_set_file): Run the file name through
 map_w32_filename, and resolve any symlinks in the file name, like
 Posix platforms do.
 (acl_set_file): Call revert_to_self, if any privileges were
 enabled.
2012-12-18 21:05:56 +02:00
Juanma Barranquero
8725c07695 src/makefile.w32-in: Update depencencies. 2012-12-17 21:59:04 +01:00
Stefan Monnier
1e101a4be4 * src/xdisp.c (select_frame_for_redisplay): Use select_window_1 to
propagate redisplay's scrolling (if any) to the right window.
(redisplay_internal): Use ensure_selected_frame.
(display_mode_lines): Complete last fix.
* src/window.c (select_window_1): New func, extracted from select_window.
(select_window): Use it.
* src/window.h (select_window_1): Declare.
2012-12-17 14:17:06 -05:00
Eli Zaretskii
66447e07c1 Support Posix ACL APIs on MS-Windows.
src/w32.c: Include sddl.h and sys/acl.h.
 (SDDL_REVISION_1): Define if not already defined.
 (g_b_init_get_security_descriptor_dacl)
 (g_b_init_convert_sd_to_sddl, g_b_init_convert_sddl_to_sd)
 (g_b_init_is_valid_security_descriptor)
 (g_b_init_set_file_security): New static flags.
 (globals_of_w32): Initialize them to zero.
 (SetFileSecurity_Name): New string constant.
 (SetFileSecurity_Proc, GetSecurityDescriptorDacl_Proc)
 (ConvertStringSecurityDescriptorToSecurityDescriptor_Proc)
 (ConvertSecurityDescriptorToStringSecurityDescriptor_Proc)
 (IsValidSecurityDescriptor_Proc): New typedefs.
 (get_file_security, get_security_descriptor_owner)
 (get_security_descriptor_group): Set errno to ENOTSUP.
 (set_file_security, get_security_descriptor_dacl)
 (is_valid_security_descriptor, convert_sd_to_sddl)
 (convert_sddl_to_sd, acl_valid, acl_to_text, acl_from_text)
 (acl_free, acl_get_file, acl_set_file): New functions.
 src/fileio.c (Fcopy_file) [WINDOWSNT]: Support copying ACLs.

 nt/inc/sys/acl.h: New file.
 nt/inc/ms-w32.h (ENOTSUP): Define if undefined.
 nt/config.nt (HAVE_POSIX_ACL): Define.

 doc/lispref/files.texi (File Attributes, Changing Files): Update to include
 MS-Windows support for ACLs.
2012-12-17 21:14:34 +02:00
Paul Eggert
207a7ef053 Don't reraise SIGCHLD, as that can now lose.
With the 2012-12-03 fix for Bug#12980 in place, an old workaround
for some of that bug's symptoms can now cause Emacs to abort.
Remove the workaround.
* process.c (wait_reading_process_output): Don't reraise SIGCHLD.
The bug that caused SIGCHLD to get lost has been fixed, and the
workaround for it can now cause Emacs to abort.

Fixes: debbugs:13192
2012-12-17 09:51:25 -08:00
Paul Eggert
17fdfc1530 * sysdep.c (emacs_abort): Bump backtrace size to 40.
Companion to the 2012-09-30 patch.  Suggested by Eli Zaretskii in
<http://lists.gnu.org/archive/html/emacs-devel/2012-09/msg00796.html>.
2012-12-16 14:53:28 -08:00