1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-04 11:00:45 -08:00
Commit graph

11432 commits

Author SHA1 Message Date
Lars Magne Ingebrigtsen
16c1ad08dc (wait_reading_process_output): Add comment and URL. 2011-11-21 21:39:44 +01:00
Lars Magne Ingebrigtsen
261b6fd466 Fix asynchrounous GnuTLS socket handling on some versions of the GnuTLS library.
Some versions of the GnuTLS library doesn't respons to poll reliably.
Work around this by checking all GnuTLS sockets explicitly from the
idle loop.
2011-11-21 19:21:42 +01:00
Jan Djärv
e7cfd277bd * xterm.c (x_clear_frame): Reinstate the XClearWindow call. 2011-11-21 19:01:04 +01:00
Chong Yidong
a9b9b7f5b1 More updates to Windows chapter of Lisp manual.
* doc/lispref/windows.texi (Splitting Windows): Fix error in documentation of
window-combination-limit.
(Cyclic Window Ordering): Minor fixes to next-window,
one-window-p, and get-lru-window docs.  Don't document
window-list-1.
(Buffers and Windows): Copyedits.
(Choosing Window): Document special handling of special-display-*.
(Choosing Window Options): Fix display-buffer-reuse-frames doc.
Don't document even-window-heights, which is going away.  Clarify
which options are obeyed by which action functions.

* src/window.c (Fnext_window, Fprevious_window): Doc fix.
2011-11-21 14:05:16 +08:00
Stefan Monnier
b0d15b4f05 * src/window.c (get_phys_cursor_glyph): Fix Lisp_Object/int mixup. 2011-11-20 15:17:13 -05:00
Juanma Barranquero
fe7a3057a3 Fix typos. 2011-11-20 20:35:27 +01:00
Martin Rudalics
d2999b1a52 Remove term "status" with "window combination limits".
* window.c (Fset_window_combination_limit): Rename argument
STATUS to LIMIT.
(Vwindow_combination_limit): Remove "status" from doc-string.
* windows.texi (Resizing Windows, Splitting Windows): Remove
term "status" when talking about combination limits.
2011-11-20 11:57:04 +01:00
Andreas Schwab
d5ff9cd046 * configure.in: Remove reference to src/m/ibms390.h.
* admin/CPP-DEFINES (VIRT_ADDR_VARIES): Remove.

* src/m/ibms390.h: Remove.
* src/m/ibms390x.h: Don't include "ibms390.h".
2011-11-20 10:24:06 +01:00
Stefan Monnier
a5bb9bd3a8 * src/fileio.c (Finsert_file_contents): Add missing gcpro1 variable.
Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
2011-11-19 23:34:32 -05:00
Juanma Barranquero
cd1181dbec Fix typos. 2011-11-20 04:48:53 +01:00
Paul Eggert
17e845af73 Standardize on VIRT_ADDR_VARIES behavior.
Otherwise, valgrind does not work on some platforms.
Problem reported by Andreas Schwab in
<http://lists.gnu.org/archive/html/emacs-devel/2011-11/msg00081.html>.
* puresize.h (pure, PURE_P): Always behave as if VIRT_ADDR_VARIES
is set, removing the need for VIRT_ADDRESS_VARIES.
(PURE_P): Use a more-efficient implementation that needs just one
comparison, not two: on x86-64 with GCC 4.6.2, this cut down the
number of instructions from 6 (xorl, cmpq, jge, xorl, cmpq, setge)
to 4 (xorl, subq, cmpq, setbe).
* alloc.c (pure): Always extern now, since that's the
VIRT_ADDR_VARIES behavior.
(PURE_POINTER_P): Use a single comparison, not two, for
consistency with the new puresize.h.
* lisp.h (PNTR_COMPARISON_TYPE): Remove; no longer needed.
* m/ibms390.h, m/intel386.h, m/template.h, s/cygwin.h, s/hpux10-20.h:
Remove VIRT_ADDR_VARIES no longer needed.

Fixes: debbugs:10042
2011-11-19 19:19:22 -08:00
Paul Eggert
615a3b8d0d Merge from trunk. 2011-11-19 19:07:02 -08:00
Eli Zaretskii
f8fe6f9674 Fix bug #10075 with cursor drawing in an hscrolled window.
src/xdisp.c (x_write_glyphs, draw_phys_cursor_glyph)
 (erase_phys_cursor, update_window_cursor, show_mouse_face)
 (cursor_in_mouse_face_p): If the cursor position is out of bounds,
 behave as if the cursor position were at the window margin.
 src/window.c (get_phys_cursor_glyph): If the window is hscrolled,
 and the cursor position is out of bounds, behave as if the cursor
 position were at the window margin.
2011-11-19 17:50:23 +02:00
Chong Yidong
df05a53c61 * window.c (Fwindow_combination_limit): Make first arg non-optional
since it is meaningless for live windows like the selected window.
2011-11-19 19:09:10 +08:00
Eli Zaretskii
7430c2a179 Revert last commit. 2011-11-19 10:39:42 +02:00
Paul Eggert
61ccba97a1 Fix minor problems found by static checking.
* dispextern.h, xdisp.c (row_hash): Declare extern only if XASSERTS.
* dispnew.c (verify_row_hash): Now static.
2011-11-18 10:29:29 -08:00
Dmitry Antipov
2071918ec9 * src/keymap.c (Fwhere_is_internal): Add missing RETURN_UNGCPROs. 2011-11-18 11:50:16 -05:00
Stefan Monnier
b50a28de87 * src/intervals.c: Fix grafting over the whole buffer.
(graft_intervals_into_buffer): Simplify.

Fixes: debbugs:10071
2011-11-18 11:00:40 -05:00
Eli Zaretskii
68c95424af Add assertion for hash values of rows.
src/dispnew.c (add_row_entry): Add xassert to verify that ROW's hash code
 is valid.
2011-11-18 14:41:36 +02:00
Eli Zaretskii
015137db60 Fix another crash due to incorrect hash value of glyph rows, bug #10035.
src/dispnew.c (swap_glyph_pointers): Swap the used[] arrays and the
 hash values of the two rows.
 (copy_row_except_pointers): Preserve the used[] arrays and the
 hash values of the two rows.
 src/xdisp.c (row_hash): New function, body extracted from
 compute_line_metrics.
 (compute_line_metrics): Call row_hash, instead of computing the
 hash code inline.
 src/dispnew.c (verify_row_hash): Call row_hash for computing the
 hash code of a row, instead of duplicating code from xdisp.c.
 src/dispextern.h (row_hash): Add prototype.
2011-11-18 14:21:42 +02:00
Tassilo Horn
a2addb0464 Work around GTK bug crashing emacs GTK builds.
* frame.c (delete_frame): Don't delete the terminal when the last
X frame is closed if emacs is built with GTK toolkit.
2011-11-18 10:36:59 +01:00
Juanma Barranquero
df85d31593 Fix typos. 2011-11-17 13:16:44 +01:00
Martin Rudalics
a0c2d0aea2 Rename window-splits to window-combination-resize.
* window.c (Vwindow_splits): Rename to
Vwindow_combination_resize.  Suggested by Juri Linkov.
(Fsplit_window_internal): Use Vwindow_combination_resize instead
of Vwindow_splits.
* window.el (window-resize, delete-window, split-window):
Replace window-splits by window-combination-resize.
* cus-start.el (window-splits): Replace by
window-combination-resize.
* windows.texi (Resizing Windows, Splitting Windows)
(Deleting Windows): Use term window-combination-resize instead
of window-splits.
2011-11-17 11:27:56 +01:00
Juanma Barranquero
7877f37394 Fix typos. 2011-11-16 18:47:25 +01:00
Juanma Barranquero
58179ccebd Fix typos. 2011-11-16 13:34:47 +01:00
Martin Rudalics
b6f6789018 Rename window-nest to window-combination-limit.
* window.h (window): Rename slot "nest" to "combination_limit".
* window.c (Fwindow_nest): Rename to Fwindow_combination_limit.
(Fset_window_nest): Rename to Fset_window_combination_limit.
(Vwindow_nest): Rename to Vwindow_combination_limit.
(recombine_windows, make_parent_window, make_window)
(Fsplit_window_internal, saved_window)
(Fset_window_configuration, save_window_save): Rename all
occurrences of window_nest to window_combination_limit.
* window.el (split-window, window-state-get-1)
(window-state-put-1, window-state-put-2): Rename occurrences of
window-nest to window-combination-limit.
* cus-start.el (window-nest): Rename to
window-combination-limit.
* windows.texi (Resizing Windows, Splitting Windows): Rename
occurrences of window-nest to window-combination-limit.
2011-11-16 11:10:40 +01:00
Juanma Barranquero
c701515351 Fix typos. 2011-11-15 18:37:37 +01:00
Juanma Barranquero
0b381c7eb8 Fix typos. 2011-11-14 22:00:24 +01:00
Eli Zaretskii
322ad6ec0e Fix bug #10035 with assertion violation in row_equal_p.
src/xdisp.c (display_line): Move the call to
 highlight_trailing_whitespace before the call to
 compute_line_metrics, since the latter needs to see the final
 faces of all the glyphs to compute ROW's hash value.  Fixes
 assertion violations in row_equal_p.
2011-11-14 22:15:38 +02:00
Juanma Barranquero
f067b8ecca Fix bug#10044
src/w32proc.c (reader_thread): Don't check pending input if cp->fd < 0,
just return.
2011-11-14 18:52:09 +01:00
Paul Eggert
c3ca24d48c Merge from trunk. 2011-11-13 20:35:22 -08:00
Eli Zaretskii
7ef3cbd547 Allow building temacs with a larger heap on MS-Windows.
src/makefile.w32-in (HEAPSIZE): New variable, allows to build temacs
 with user-defined heap size.  Bump the default size of the temacs
 heap to 27MB, to avoid memory warning when running temacs.
 ($(TEMACS)): Use HEAPSIZE instead of a hardcoded value.
2011-11-12 14:11:54 +02:00
Eli Zaretskii
7a7270ddb6 Verify glyph row's hash values.
src/dispnew.c (verify_row_hash) [XASSERTS]: New function.
 (adjust_glyph_matrix, row_equal_p): Use it in xassert to verify
 that the hash value of glyph rows is correct.
2011-11-12 13:56:57 +02:00
Eli Zaretskii
1e5b2111b6 dispnew.c (scrolling_window): Fix index usage.
src/dispnew.c (scrolling_window): Fix incorrect indices in accessing
 current_matrix and desired_matrix.  (Bug#9990)
2011-11-12 12:09:38 +02:00
Martin Rudalics
89d612214e Don't handle splits status.
* window.h (window): Remove splits slot.
* window.c (Fwindow_splits, Fset_window_splits): Remove.
(Fdelete_other_windows_internal, make_parent_window)
(make_window, Fsplit_window_internal, Fdelete_window_internal)
(Fset_window_configuration, save_window_save): Don't deal with
split status of windows.
(saved_window): Remove splits slot.
(Vwindow_splits): Rewrite doc-string.
* window.el (window-resize, delete-window): Use window-splits
variable instead of function.
(window-state-get-1, window-state-put-2, window-state-put):
Don't deal with windows' splits status.
* windows.texi (Splitting Windows, Deleting Windows): Remove
references to splits status of windows.
2011-11-12 10:55:50 +01:00
Jan Djärv
97f18cc83d * xfns.c (unwind_create_frame):
* nsfns.m (unwind_create_frame):
* w32fns.c (unwind_create_frame): Use Fmemq to check if frame is in
Vframe_list.

Fixes: debbugs:9999
2011-11-11 19:33:30 +01:00
Dmitry Antipov
22a648b4d6 * xdisp.c (syms_of_xdisp): Remove duplicated definition of Qtext. 2011-11-11 01:18:32 -08:00
Kenichi Handa
659afedebb callproc.c (Fcall_process): Set the member dst_multibyte of process_coding. 2011-11-11 17:09:40 +09:00
Kenichi Handa
0756b0c3a6 merge trunk 2011-11-11 16:08:47 +09:00
Kenichi Handa
9ac0394b8d xdisp.c (fill_composite_glyph_string): Always set s->face, to avoid a crash (bug#9496). 2011-11-11 16:08:10 +09:00
Paul Eggert
6a0bf43d7c Standardize on VIRT_ADDR_VARIES behavior; otherwise, valgrind
does not work on some platforms.  Problem reported by Andreas Schwab in
<http://lists.gnu.org/archive/html/emacs-devel/2011-11/msg00081.html>.
* puresize.h (pure, PURE_P): Always behave as if VIRT_ADDR_VARIES
is set, removing the need for VIRT_ADDRESS_VARIES.
(PURE_P): Use a more-efficient implementation that needs just one
comparison, not two: on x86-64 with GCC 4.6.2, this cut down the
number of instructions from 6 (xorl, cmpq, jge, xorl, cmpq, setge)
to 4 (xorl, subq, cmpq, setbe).
* alloc.c (pure): Always extern now, since that's the
VIRT_ADDR_VARIES behavior.
(PURE_POINTER_P): Use a single comparison, not two, for
consistency with the new puresize.h.
* lisp.h (PNTR_COMPARISON_TYPE): Remove; no longer needed.
* m/ibms390.h, m/intel386.h, m/template.h, s/cygwin.h, s/hpux10-20.h:
Remove VIRT_ADDR_VARIES no longer needed.
2011-11-10 00:14:27 -08:00
Chong Yidong
2fbdc249e6 Disallow calling window-inside-edges and related functions on internal windows.
* src/window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges)
(Fwindow_inside_absolute_pixel_edges): Only allow live windows.
2011-11-09 22:29:23 +08:00
Paul Eggert
ac6b1f816a * s/gnu.h (GC_MARK_STACK): Define to GC_MAKE_GCPROS_NOOPS (Bug#9926). 2011-11-08 12:15:17 -08:00
Paul Eggert
09db192c23 Avoid some portability problems by eschewing 'extern inline' functions.
The trivial performance wins aren't worth the portability hassles; see
<http://lists.gnu.org/archive/html/emacs-devel/2011-11/msg00084.html>
et seq.
* dispextern.h (window_box, window_box_height, window_text_bottom_y)
(window_box_width, window_box_left, window_box_left_offset)
(window_box_right, window_box_right_offset): Undo previous change,
by removing the "extern"s.
* intervals.c (adjust_intervals_for_insertion)
(adjust_intervals_for_deletion): Undo previous change,
making these static again.
(offset_intervals, temp_set_point_both, temp_set_point)
(copy_intervals_to_string): No longer inline.
* xdisp.c (window_text_bottom_y, window_box_width)
(window_box_height, window_box_left_offset)
(window_box_right_offset, window_box_left, window_box_right)
(window_box): No longer inline.
2011-11-08 12:05:27 -08:00
Chong Yidong
105216ed03 Move low-level window width/height functions to C, and high-level functions to Lisp.
* lisp/window.el (window-total-height, window-total-width): Doc fix.
(window-body-size): Move from C.
(window-body-height, window-body-width): Move to C.

* src/window.c (Fwindow_left_column, Fwindow_top_line): Doc fix.
(Fwindow_body_height, Fwindow_body_width): Move from Lisp.  Signal
an error if not a live window.
(Fwindow_total_width, Fwindow_total_height): Move from Lisp.
(Fwindow_total_size, Fwindow_body_size): Move to Lisp.
2011-11-08 15:25:56 +08:00
Juanma Barranquero
ae9e237fe1 src/lisp.h (syms_of_abbrev): Remove declaration.
Reported by CHENG Gao <chenggao@royau.me>.
2011-11-07 18:04:01 +01:00
Eli Zaretskii
c7aa833355 Allow to run temacs.exe on MS-Windows in GUI mode.
src/w32.c (check_windows_init_file): Don't look for term/w32-win.el
 if Vpurify_flag is non-nil.  Fixes a crash when running w32 build
 of temacs in GUI mode.
2011-11-07 18:42:34 +02:00
Martin Rudalics
be7f55452c Remove term "subwindow" from code and documentation.
* window.h: Declare delete_all_child_windows instead of
delete_all_subwindows.
* window.c (Fwindow_nest, Fset_window_nest)
(Fset_window_new_total, Fset_window_new_normal)
(Fwindow_resize_apply): Don't use term subwindow in doc-strings.
(delete_all_subwindows): Rename to delete_all_child_windows.
(Fdelete_other_windows_internal, Fset_window_configuration):
Call delete_all_child_windows instead of delete_all_subwindows.
* frame.c (delete_frame): Call delete_all_child_windows instead
of delete_all_subwindows.

* window.el (window-combinations): Make WINDOW argument
mandatory.  Rewrite doc-string.
(walk-window-subtree, window-atom-check, window-min-delta)
(window-max-delta, window--resize-this-window)
(window--resize-root-window-vertically, window-tree)
(balance-windows, window-state-put): Rewrite doc-strings as to
not mention the term "subwindow".
(window--resize-subwindows-skip-p): Rename to
window--resize-child-windows-skip-p.
(window--resize-subwindows-normal): Rename to
window--resize-child-windows-normal.
(window--resize-subwindows): Rename to
window--resize-child-windows.
(window-or-subwindow-p): Rename to window--in-subtree-p.

* windows.texi (Resizing Windows, Splitting Windows)
(Window Configurations): Use "child window" instead of
"subwindow".
2011-11-07 10:51:08 +01:00
Paul Eggert
ca78dc431f * alloc.c (DEADP): New macro, for porting to GNU/Hurd (Bug#9926).
This is also needed for porting to any host where GC_MARK_STACK is
not GC_MAKE_GCPROS_NOOPS.
(which_symbols): Use it.
2011-11-06 21:37:49 -08:00
Kenichi Handa
0d92c7bfab merge trunk 2011-11-07 11:00:43 +09:00