Login
[x]
Log in using an account from:
Fedora Account System
Red Hat Associate
Red Hat Customer
Or login using a Red Hat Bugzilla account
Forgot Password
Login:
Hide Forgot
Create an Account
Red Hat Bugzilla – Attachment 896693 Details for
Bug 1080662
screen not redrawn correctly when using mosh
[?]
New
Simple Search
Advanced Search
My Links
Browse
Requests
Reports
Current State
Search
Tabular reports
Graphical reports
Duplicates
Other Reports
User Changes
Plotly Reports
Bug Status
Bug Severity
Non-Defaults
|
Product Dashboard
Help
Page Help!
Bug Writing Guidelines
What's new
Browser Support Policy
5.0.4.rh83 Release notes
FAQ
Guides index
User guide
Web Services
Contact
Legal
This site requires JavaScript to be enabled to function correctly, please enable it.
rebuilds vte3 after adding the relevant patch to the spec file and sources
fix-and-rebuild.sh (text/x-sh), 5.51 KB, created by
Lars Ellenberg
on 2014-05-17 22:00:06 UTC
(
hide
)
Description:
rebuilds vte3 after adding the relevant patch to the spec file and sources
Filename:
MIME Type:
Creator:
Lars Ellenberg
Created:
2014-05-17 22:00:06 UTC
Size:
5.51 KB
patch
obsolete
># this was done on Fedora 20, on 2014-05-17 ># against vte3-0.34.9-1.lge.1.fc20.x86_64 ># ># to fix issues described at ># "screen not redrawn correctly when using mosh" (with gnome-terminal) ># https://bugzilla.gnome.org/show_bug.cgi?id=686097 ># https://bugzilla.gnome.org/show_bug.cgi?id=542087 ># using the patch provided at ># https://bugzilla.gnome.org/show_bug.cgi?id=542087#c15 ># ># you need to have build dependencies and devel tools installed ># ># You may need to adjust the spec file patch ># if you patch a different version of srpm. ># > ># grabbing srpm >yumdownloader --source vte3 ># installing srpm >rpm -ihv vte3-0.34.9-1.fc20.src.rpm ># grabbing the fix >cd ~/rpmbuild/SOURCES ># P="https://bug542087.bugzilla-attachments.gnome.org/attachment.cgi?id=176035" ># wget "$P" -O fix-scroll-region-invalidation.diff >cat > fix-scroll-region-invalidation.diff <<'___' >Index: vte-0.26.0/src/vte.c >=================================================================== >--- vte-0.26.0.orig/src/vte.c 2010-11-30 23:04:53.000000000 -0800 >+++ vte-0.26.0/src/vte.c 2010-12-07 20:05:07.865548000 -0800 >@@ -3862,6 +3862,7 @@ vte_terminal_process_incoming(VteTermina > long wcount, start, delta; > gboolean leftovers, modified, bottom, again; > gboolean invalidated_text; >+ gboolean in_scroll_region; > GArray *unichars; > struct _vte_incoming_chunk *chunk, *next_chunk, *achunk = NULL; > >@@ -3881,6 +3882,10 @@ vte_terminal_process_incoming(VteTermina > cursor = screen->cursor_current; > cursor_visible = terminal->pvt->cursor_visible; > >+ in_scroll_region = screen->scrolling_restricted >+ && (screen->cursor_current.row >= (screen->insert_delta + screen->scrolling_region.start)) >+ && (screen->cursor_current.row <= (screen->insert_delta + screen->scrolling_region.end)); >+ > /* We should only be called when there's data to process. */ > g_assert(terminal->pvt->incoming || > (terminal->pvt->pending->len > 0)); >@@ -3979,6 +3984,8 @@ skip_chunk: > * points to the first character which isn't part of this > * sequence. */ > if ((match != NULL) && (match[0] != '\0')) { >+ gboolean new_in_scroll_region; >+ > /* Call the right sequence handler for the requested > * behavior. */ > _vte_terminal_handle_sequence(terminal, >@@ -3989,12 +3996,20 @@ skip_chunk: > start = (next - wbuf); > modified = TRUE; > >- /* if we have moved during the sequence handler, restart the bbox */ >+ new_in_scroll_region = screen->scrolling_restricted >+ && (screen->cursor_current.row >= (screen->insert_delta + screen->scrolling_region.start)) >+ && (screen->cursor_current.row <= (screen->insert_delta + screen->scrolling_region.end)); >+ >+ delta = screen->scroll_delta; /* delta may have changed from sequence. */ >+ >+ /* if we have moved greatly during the sequence handler, or moved into a scroll_region >+ * from outside it, restart the bbox */ > if (invalidated_text && >- (screen->cursor_current.col > bbox_bottomright.x + VTE_CELL_BBOX_SLACK || >- screen->cursor_current.col < bbox_topleft.x - VTE_CELL_BBOX_SLACK || >- screen->cursor_current.row > bbox_bottomright.y + VTE_CELL_BBOX_SLACK || >- screen->cursor_current.row < bbox_topleft.y - VTE_CELL_BBOX_SLACK)) { >+ ((new_in_scroll_region && !in_scroll_region) || >+ (screen->cursor_current.col > bbox_bottomright.x + VTE_CELL_BBOX_SLACK || >+ screen->cursor_current.col < bbox_topleft.x - VTE_CELL_BBOX_SLACK || >+ screen->cursor_current.row > bbox_bottomright.y + VTE_CELL_BBOX_SLACK || >+ screen->cursor_current.row < bbox_topleft.y - VTE_CELL_BBOX_SLACK))) { > /* Clip off any part of the box which isn't already on-screen. */ > bbox_topleft.x = MAX(bbox_topleft.x, 0); > bbox_topleft.y = MAX(bbox_topleft.y, delta); >@@ -4014,6 +4029,8 @@ skip_chunk: > bbox_bottomright.x = bbox_bottomright.y = -G_MAXINT; > bbox_topleft.x = bbox_topleft.y = G_MAXINT; > } >+ >+ in_scroll_region = new_in_scroll_region; > } else > /* Second, we have a NULL match, and next points to the very > * next character in the buffer. Insert the character which >___ > ># patching the spec file >cd ~/rpmbuild/SPECS >cp -av vte3.spec vte3.spec.orig > >patch vte3.spec <<'___' >--- vte3.spec.orig 2014-05-17 23:14:53.821098169 +0200 >+++ vte3.spec 2014-05-17 23:31:58.718130689 +0200 >@@ -1,6 +1,6 @@ > Name: vte3 > Version: 0.34.9 >-Release: 1%{?dist} >+Release: 1.lge.1%{?dist} > Summary: A terminal emulator > License: LGPLv2+ > Group: User Interface/X >@@ -11,6 +11,10 @@ > Patch1: vte-alt-meta-confusion.patch > # https://bugzilla.gnome.org/show_bug.cgi?id=688456 > Patch2: 0001-widget-Only-show-the-cursor-on-motion-if-moved.patch >+# "screen not redrawn correctly when using mosh" (with gnome-terminal) >+# https://bugzilla.gnome.org/show_bug.cgi?id=686097 >+# https://bugzilla.gnome.org/show_bug.cgi?id=542087#c15 >+Patch3: fix-scroll-region-invalidation.diff > > BuildRequires: gtk3-devel >= 3.0.0 > BuildRequires: ncurses-devel >@@ -43,6 +47,7 @@ > %patch0 -p1 -b .grow-up > %patch1 -p1 -b .alt-meta > %patch2 -p1 -b .motion >+%patch3 -p1 -b .fix-scroll-invalidation > > %build > CFLAGS="%optflags -fPIE -DPIE" \ >@@ -90,6 +95,11 @@ > > > %changelog >+* Sat May 17 2014 Lars Ellenberg <lars@linbit.com> - 0.34.9-1.lge.1 >+- Add patch fix-scroll-region-invalidation.diff. >+ Fixes https://bugzilla.gnome.org/show_bug.cgi?id=542087 aka >+ https://bugzilla.gnome.org/show_bug.cgi?id=686097 >+ > * Tue Oct 15 2013 Richard Hughes <rhughes@redhat.com> - 0.34.9-1 > - Update to 0.34.9 > >___ > ># rebuild the package >rpmbuild -ba vte3.spec > ># install the package >printf "\n\n" >printf "sudo rpm -ihv $HOME/rpmbuild/RPMS/*/vte3-0.34.9-1.lge.1.*.rpm\n\n"
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 1080662
:
896693
|
907793