Bug 3071 - (int-122140) In "screen", backspace key gives "^@" (nul character) instead of "^?"
(int-122140)
: In "screen", backspace key gives "^@" (nul character) instead of "^?"
Status: RESOLVED FIXED
Product: Utilities
X Terminal
: 5.0-beta
: N810 Maemo
: Low normal with 1 vote (vote)
: 5.0 (1.2009.41-10)
Assigned To: unassigned
: osso-xterm-bugs
: http://bugzilla.gnome.org/show_bug.cg...
: community-diablo, patch, upstream
:
:
  Show dependency tree
 
Reported: 2008-04-05 05:19 UTC by Vincent Lefevre
Modified: 2009-10-22 07:57 UTC (History)
3 users (show)

See Also:


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description Vincent Lefevre (reporter) 2008-04-05 05:19:39 UTC
SOFTWARE VERSION:
OS2008 / 2.2007.50-2

STEPS TO REPRODUCE THE PROBLEM:
1. Open osso-xterm.
2. Start the "screen" utility.
3. Type "cat" [Enter].
4. Type a few characters, then the backspace key.

EXPECTED OUTCOME:
The last character should be erased (but if Ctrl-V is typed first, one should
get "^?").

ACTUAL OUTCOME:
One gets "^@".

REPRODUCIBILITY:
always

OTHER COMMENTS:
This seems to be a known problem in screen with some terminals, see
  https://bugs.launchpad.net/ubuntu/+source/screen/+bug/29787
Unfortunately this problem occurs in osso-xterm. Moreover the workaround
described in the above URL, more specifically
  bindkey -d -k kb stuff "\177"
in the .screenrc, doesn't change anything here.
Comment 1 Andre Klapper maemo.org 2009-01-21 17:01:03 UTC
Diablo 5.2008.43-7 ships libvte4 1:0.12.2-0mh7.

Patch against 0.16.14 available, not reviewed/committed in upstream GNOME, but
already committed in Ubuntu.
Comment 2 Andre Klapper maemo.org 2009-05-20 16:53:42 UTC
> 2. Start the "screen" utility.

What is this? Where can I get that? Exact steps welcome.

Note to myself:
Fremantle SDK beta ships vte, libvte-common, libvte-dev and vte4 in version
1:0.16.14-0mh9.m5.
So the upstream patch should be more or less easy to apply.
Comment 3 Vincent Lefevre (reporter) 2009-05-20 17:07:38 UTC
(In reply to comment #2)
> > 2. Start the "screen" utility.
> 
> What is this? Where can I get that? Exact steps welcome.

Here's information I get from "apt-cache show screen":

Package: screen
Version: 4.0.3-0.3osso2
Architecture: armel
Pre-Depends: debconf (>= 0.5) | debconf-2.0
Depends: libc6 (>= 2.3.5-1), libncursesw5 (>= 5.4-1), base-passwd (>= 2.0.3.4),
passwd (>= 1:4.0.3-10), ncurses-base
Conflicts: suidmanager (<< 0.52)
Installed-Size: 980
Maintainer: maemo integration <integration@maemo.org>
Priority: optional
Section: misc
Filename: pool/maemo4.1.2/free/s/screen/screen_4.0.3-0.3osso2_armel.deb
Size: 593284
MD5sum: 520eb70f12ab85f963283f0906f3985a
Description: a terminal multiplexor with VT100/ANSI terminal emulation
 screen is a terminal multiplexor that runs several separate "screens" on a
 single physical character-based terminal.  Each virtual terminal emulates a
 DEC VT100 plus several ANSI X3.64 and ISO 2022 functions.  Screen sessions
 can be detached and resumed later on a different terminal.
 .
 Screen also supports a whole slew of other features.  Some of these are:
 configurable input and output translation, serial port support, configurable
 logging, multi-user support, and utf8 charset support.
Comment 4 Andre Klapper maemo.org 2009-05-26 02:21:54 UTC
Upstream was closed as WONTFIX:
"What vte does is exactly what xterm does.  Fix screen.  Or explain to me why
this works in xterm but not vte."

Comments to http://bugzilla.gnome.org/show_bug.cgi?id=543379 answering that
question welcome.
Comment 5 Vincent Lefevre (reporter) 2009-05-26 03:23:55 UTC
The problem can be fixed in two ways (I haven't tried):

1. There's a patch for vte here:
http://patches.ubuntu.com/by-release/extracted/ubuntu/v/vte/1:0.17.4-0ubuntu3/94_no_nul_backspace.patch
but it seems to have been dropped. I don't know why.

2. There's a patch for GNU screen here:
http://git.savannah.gnu.org/cgit/screen.git/commit/?id=01fbf99748f536519605087d5937761790fc6ded

Until the problem is fixed, here's a possible workaround: before running
screen, ssh to localhost (and each time the screen session is attached, it must
be done after a ssh in order to avoid the bug).
Comment 6 Vincent Lefevre (reporter) 2009-05-26 03:57:35 UTC
(In reply to comment #5)
> 2. There's a patch for GNU screen here:

I've recompiled screen using this patch and this solved the problem. FYI:

$ wget http://ftp.gnu.org/gnu/screen/screen-4.0.3.tar.gz
$ tar xzf screen-4.0.3.tar.gz
$ cd screen-4.0.3
$ wget -O -
'http://git.savannah.gnu.org/cgit/screen.git/patch/?id=01fbf99748f536519605087d5937761790fc6ded'
| patch
$ ./configure --prefix=/path/to/prefix
$ make
$ sudo gainroot
# make install
Comment 7 Andre Klapper maemo.org 2009-06-11 14:28:47 UTC
As
http://git.savannah.gnu.org/cgit/screen.git/commit/?id=01fbf99748f536519605087d5937761790fc6ded
is not included in an upstream *tarball* yet and as the internal screen diff.gz
for Fremantle does not list the patch this should be still valid in Fremantle.

Setting version info + importing.
Comment 8 Andre Klapper maemo.org 2009-07-01 17:36:27 UTC
Just tested this in latest Fremantle myself and "^?" is correctly displayed.

Unfortunately this is a WONTFIX for Diablo as Diablo is in maintenance mode and
Nokia will only provide bugfixes for critical issues if at all.
For your interest the Mer project aims to provide a community backport of
Fremantle for N8x0 devices. See http://wiki.maemo.org/Mer for more information.
Comment 9 Lucas Maneos 2009-10-22 07:57:11 UTC
Marking patches of interest to Diablo (Maemo4) community updates, please excuse
the noise.