Package: screen Version: 4.0.3-13 Severity: normal Tags: patch User: ubuntu-de...@lists.ubuntu.com Usertags: origin-ubuntu karmic ubuntu-patch
*** /tmp/tmpgWl8Wm In Ubuntu, we've applied the attached patch to achieve the following: + Add show encoding feature, using "%e" in hardstatus to show current encoding. Ported from FreeBSD original by yz...@cs.nctu.edu.tw. LP: #286810 + Add 59-no-beep-on-write-acl.dpatch: do not beep on all displays when the write ACL triggers, instead report failure as done with regular screen command ACL failures. We thought you might be interested in doing the same. -- System Information: Debian Release: 5.0 APT prefers jaunty-updates APT policy: (500, 'jaunty-updates'), (500, 'jaunty-security'), (500, 'jaunty-proposed'), (500, 'jaunty-backports'), (500, 'jaunty') Architecture: i386 (i686) Kernel: Linux 2.6.28-13-generic (SMP w/2 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash
diff -u screen-4.0.3/debian/changelog screen-4.0.3/debian/changelog diff -u screen-4.0.3/debian/patches/00list screen-4.0.3/debian/patches/00list --- screen-4.0.3/debian/patches/00list +++ screen-4.0.3/debian/patches/00list @@ -41,0 +42,2 @@ +58-show-encoding-hardstatus.dpatch +59-no-beep-on-write-acl.dpatch only in patch2: unchanged: --- screen-4.0.3.orig/debian/patches/58-show-encoding-hardstatus.dpatch +++ screen-4.0.3/debian/patches/58-show-encoding-hardstatus.dpatch @@ -0,0 +1,42 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 58-show-encoding-hardstatus.dpatch +## DP: From: ras...@rascov.tw +## DP: Date: Wed Feb 11 05:51:31 CST 2009 +## DP: Subject: show encoding in hardstatus, orginal from BSD by +## DP: yz...@cs.nctu.edu.tw + +## DP: https://bugs.launchpad.net/ubuntu/+source/screen/+bug/286810 + +...@dpatch@ + +--- screen-4.0.3.orig/screen.c ++++ screen-4.0.3/screen.c +@@ -2564,6 +2564,18 @@ + } + p += strlen(p) - 1; + break; ++ #ifdef ENCODINGS ++ case 'e': ++ *p = 0; ++ D_encoding = nwin_options.encoding > 0 ? nwin_options.encoding : 0; ++ if (win && win->w_encoding) ++ { ++ *p++ = ' '; ++ strcpy(p, EncodingName(win->w_encoding)); ++ } ++ p += strlen(p) - 1; ++ break; ++ #endif + case '{': + { + char rbuf[128]; +--- screen-4.0.3.orig/process.c ++++ screen-4.0.3/process.c +@@ -3419,6 +3419,7 @@ + { + WinSwitchEncoding(fore, n); + ResetCharsets(fore); ++ RedisplayDisplays(0); + } + else if (i && display) + D_encoding = n; only in patch2: unchanged: --- screen-4.0.3.orig/debian/patches/59-no-beep-on-write-acl.dpatch +++ screen-4.0.3/debian/patches/59-no-beep-on-write-acl.dpatch @@ -0,0 +1,19 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 59-no-beep-on-write-acl.dpatch by Kees Cook <k...@ubuntu.com> +## DP: Description: instead of beeping on all displays, report failure to attached display. +## DP: Upstream: https://savannah.gnu.org/bugs/index.php?26401 + +...@dpatch@ +diff -uNrp screen-4.0.3~/window.c screen-4.0.3/window.c +--- screen-4.0.3~/window.c 2009-04-29 10:25:28.000000000 -0700 ++++ screen-4.0.3/window.c 2009-04-29 10:27:21.000000000 -0700 +@@ -275,8 +275,7 @@ int *lenp; + debug2("window %d, user %s: ", fore->w_number, D_user->u_name); + debug2("writelock %d (wlockuser %s)\n", fore->w_wlock, + fore->w_wlockuser ? fore->w_wlockuser->u_name : "NULL"); +- /* XXX FIXME only display !*/ +- WBell(fore, visual_bell); ++ Msg(0, "write: permission denied (user %s)", D_user->u_name); + *bufpp += *lenp; + *lenp = 0; + return;