aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKaroly Lorentey2004-08-31 16:30:29 +0000
committerKaroly Lorentey2004-08-31 16:30:29 +0000
commitbfe3b03c6a537ffbdfa25e3b16acd40ae6a833ef (patch)
tree961072e4fa30982489b86dd8bc831fe42fedc25e /src
parentd61858fb8b38da03f4a53f33e66b11e280533627 (diff)
parent2728b5d02c0686c40c49aebd00f7d5520b371aed (diff)
downloademacs-bfe3b03c6a537ffbdfa25e3b16acd40ae6a833ef.tar.gz
emacs-bfe3b03c6a537ffbdfa25e3b16acd40ae6a833ef.zip
Merged in changes from CVS trunk (Jan Djärv has fixed the XSync call in xterm.c, no need to disable it anymore).
Patches applied: * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-506 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-507 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-508 Update from CVS git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-238
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog8
-rw-r--r--src/xfns.c10
-rw-r--r--src/xterm.c16
3 files changed, 25 insertions, 9 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index cbf06bc480f..d49514b2fc0 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,11 @@
12004-08-24 Jan Dj,Ad(Brv <jan.h.d@swipnet.se>
2
3 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
4
5 * xfns.c (x_window_to_frame, x_any_window_to_frame)
6 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
7 (x_top_window_to_frame): Return 0 if wdesc is None.
8
12004-08-22 Richard M. Stallman <rms@gnu.org> 92004-08-22 Richard M. Stallman <rms@gnu.org>
2 10
3 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS, 11 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
diff --git a/src/xfns.c b/src/xfns.c
index 762b45d0089..e03edbbec89 100644
--- a/src/xfns.c
+++ b/src/xfns.c
@@ -293,6 +293,8 @@ x_window_to_frame (dpyinfo, wdesc)
293 Lisp_Object tail, frame; 293 Lisp_Object tail, frame;
294 struct frame *f; 294 struct frame *f;
295 295
296 if (wdesc == None) return 0;
297
296 for (tail = Vframe_list; GC_CONSP (tail); tail = XCDR (tail)) 298 for (tail = Vframe_list; GC_CONSP (tail); tail = XCDR (tail))
297 { 299 {
298 frame = XCAR (tail); 300 frame = XCAR (tail);
@@ -342,6 +344,8 @@ x_any_window_to_frame (dpyinfo, wdesc)
342 struct frame *f, *found; 344 struct frame *f, *found;
343 struct x_output *x; 345 struct x_output *x;
344 346
347 if (wdesc == None) return NULL;
348
345 found = NULL; 349 found = NULL;
346 for (tail = Vframe_list; GC_CONSP (tail) && !found; tail = XCDR (tail)) 350 for (tail = Vframe_list; GC_CONSP (tail) && !found; tail = XCDR (tail))
347 { 351 {
@@ -396,6 +400,8 @@ x_non_menubar_window_to_frame (dpyinfo, wdesc)
396 struct frame *f; 400 struct frame *f;
397 struct x_output *x; 401 struct x_output *x;
398 402
403 if (wdesc == None) return 0;
404
399 for (tail = Vframe_list; GC_CONSP (tail); tail = XCDR (tail)) 405 for (tail = Vframe_list; GC_CONSP (tail); tail = XCDR (tail))
400 { 406 {
401 frame = XCAR (tail); 407 frame = XCAR (tail);
@@ -442,6 +448,8 @@ x_menubar_window_to_frame (dpyinfo, wdesc)
442 struct frame *f; 448 struct frame *f;
443 struct x_output *x; 449 struct x_output *x;
444 450
451 if (wdesc == None) return 0;
452
445 for (tail = Vframe_list; GC_CONSP (tail); tail = XCDR (tail)) 453 for (tail = Vframe_list; GC_CONSP (tail); tail = XCDR (tail))
446 { 454 {
447 frame = XCAR (tail); 455 frame = XCAR (tail);
@@ -487,6 +495,8 @@ x_top_window_to_frame (dpyinfo, wdesc)
487 struct frame *f; 495 struct frame *f;
488 struct x_output *x; 496 struct x_output *x;
489 497
498 if (wdesc == None) return 0;
499
490 for (tail = Vframe_list; GC_CONSP (tail); tail = XCDR (tail)) 500 for (tail = Vframe_list; GC_CONSP (tail); tail = XCDR (tail))
491 { 501 {
492 frame = XCAR (tail); 502 frame = XCAR (tail);
diff --git a/src/xterm.c b/src/xterm.c
index eb455522d1c..c1edf49aca7 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -7608,15 +7608,13 @@ static Lisp_Object
7608x_catch_errors_unwind (old_val) 7608x_catch_errors_unwind (old_val)
7609 Lisp_Object old_val; 7609 Lisp_Object old_val;
7610{ 7610{
7611 Lisp_Object first; 7611 Lisp_Object first = XCAR (old_val);
7612 7612 Display *dpy = XSAVE_VALUE (first)->pointer;
7613 first = XCAR (old_val); 7613
7614 7614 /* The display may have been closed before this function is called.
7615#if 0 /* XXX This has dumped core on me several times when my X 7615 Check if it is still open before calling XSync. */
7616 server crashed. If this call is important, maybe we should 7616 if (x_display_info_for_display (dpy) != 0)
7617 check that the display is still alive. -- lorentey */ 7617 XSync (dpy, False);
7618 XSync (XSAVE_VALUE (first)->pointer, False);
7619#endif
7620 7618
7621 x_error_message_string = XCDR (old_val); 7619 x_error_message_string = XCDR (old_val);
7622 return Qnil; 7620 return Qnil;