From edd5743e3100490f509309ca5a3b30e36348e948 Mon Sep 17 00:00:00 2001 From: root Date: Sat, 18 Feb 2006 15:44:26 +0000 Subject: [PATCH] *** empty log message *** --- Changes | 3 +++ src/feature.h | 2 +- src/rxvttoolkit.C | 9 ++------- src/rxvttoolkit.h | 2 -- src/screen.C | 4 +++- 5 files changed, 9 insertions(+), 11 deletions(-) diff --git a/Changes b/Changes index 816f63d6..f0f40718 100644 --- a/Changes +++ b/Changes @@ -1,5 +1,6 @@ rxvt-unicode changelog <= google-friendly title +TODO: xcopyarea pass broken, fix and improve TODO: event mechanism that replaces on_keyboard_command with something more scalable. TODO: overlays collide with the way the out-of-focus cursor is being drawn TODO: split perl documentation and urxvt.pm into separate files @@ -32,6 +33,8 @@ DUMB: support tex fonts so also check for matching fg colours. This fixes the problem where selecting newly scrolled-in lines would exhibit wrong colours. - fix a race resulting in a crash on exiting. + - fix a bug in xcopyarea pass and _disable_ it, as it seems not to be + working in either rxvt-unicode nor in the original rxvt. 7.6 Fri Feb 10 08:52:36 CET 2006 - changed interpretation of [alpha] colour prefix. diff --git a/src/feature.h b/src/feature.h index cc6be64c..94240d7c 100644 --- a/src/feature.h +++ b/src/feature.h @@ -136,7 +136,7 @@ * Define to remove support for XCopyArea () support. XCopyArea () is useful * for scrolling on non-local X displays */ -#undef NO_SLOW_LINK_SUPPORT +#define NO_SLOW_LINK_SUPPORT /* * Printer pipe which will be used for emulation of attached vt100 printer diff --git a/src/rxvttoolkit.C b/src/rxvttoolkit.C index 711b99fe..c503463d 100644 --- a/src/rxvttoolkit.C +++ b/src/rxvttoolkit.C @@ -28,11 +28,8 @@ #include #include - -#ifndef NO_SLOW_LINK_SUPPORT -# include -# include -#endif +#include +#include #if XFT # include @@ -465,7 +462,6 @@ bool rxvt_display::ref_init () int fd = XConnectionNumber (dpy); -#ifndef NO_SLOW_LINK_SUPPORT // try to detect wether we have a local connection. // assume unix domains socket == local, everything else not // TODO: might want to check for inet/127.0.0.1 @@ -475,7 +471,6 @@ bool rxvt_display::ref_init () if (!getsockname (fd, (sockaddr *)&sa, &sl)) is_local = sa.sun_family == AF_LOCAL; -#endif x_ev.start (fd, EVENT_READ); fcntl (fd, F_SETFD, FD_CLOEXEC); diff --git a/src/rxvttoolkit.h b/src/rxvttoolkit.h index 06491d30..96128857 100644 --- a/src/rxvttoolkit.h +++ b/src/rxvttoolkit.h @@ -189,9 +189,7 @@ struct rxvt_display : refcounted { Window root; rxvt_term *selection_owner; Atom xa[NUM_XA]; -#ifndef NO_SLOW_LINK_SUPPORT bool is_local; -#endif #ifdef POINTER_BLANK Cursor blank_cursor; #endif diff --git a/src/screen.C b/src/screen.C index 66fc25c7..5325720b 100644 --- a/src/screen.C +++ b/src/screen.C @@ -2108,6 +2108,7 @@ rxvt_term::scr_refresh () NOTHROW && abs (num_scr) < nrow && !have_bg) { int16_t nits; + int i = num_scr; int j; int len, wlen; dLocal (int, num_scr); @@ -2115,6 +2116,7 @@ rxvt_term::scr_refresh () NOTHROW j = nrow; wlen = len = -1; row = i > 0 ? 0 : j - 1; + for (; j-- >= 0; row += (i > 0 ? 1 : -1)) { if (row + i >= 0 && row + i < nrow && row + i != ocrow) @@ -2145,7 +2147,7 @@ rxvt_term::scr_refresh () NOTHROW } } - if (len != -1) + if (len >= 0) { /* also comes here at end if needed because of >= above */ if (wlen < len) -- 2.34.1