Bug 134037 - xterm duplicating characters in output
Summary: xterm duplicating characters in output
Status: RESOLVED FIXED
Alias: None
Product: SUSE Linux 10.1
Classification: openSUSE
Component: X11 Applications (show other bugs)
Version: Alpha 3
Hardware: i586 Other
: P2 - High : Normal (vote)
Target Milestone: ---
Assignee: Vladimir Nadvornik
QA Contact: Stefan Dirsch
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-11-16 18:54 UTC by Ladislav Michnovic
Modified: 2006-01-03 15:40 UTC (History)
4 users (show)

See Also:
Found By: Other
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments
screenshot (18.87 KB, image/png)
2005-11-16 18:54 UTC, Ladislav Michnovic
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Ladislav Michnovic 2005-11-16 18:54:02 UTC
I experienced strange behavior of xterm. If typing in xterm, if any characters are behind cursor, they are duplicating. Also mc cannot be used (attaching screenshot). I don't experience such behavior in e.g. rxvt.
My locale is:
$ locale
LANG=sk_SK.UTF-8                                                                LC_CTYPE="sk_SK.UTF-8"                                                          LC_NUMERIC="sk_SK.UTF-8"                                                        LC_TIME="sk_SK.UTF-8"                                                           LC_COLLATE="sk_SK.UTF-8"                                                        LC_MONETARY="sk_SK.UTF-8"                                                       LC_MESSAGES="sk_SK.UTF-8"                                                       LC_PAPER="sk_SK.UTF-8"                                                          LC_NAME="sk_SK.UTF-8"                                                           LC_ADDRESS="sk_SK.UTF-8"                                                        LC_TELEPHONE="sk_SK.UTF-8"                                                      LC_MEASUREMENT="sk_SK.UTF-8"                                                    LC_IDENTIFICATION="sk_SK.UTF-8"                                                 LC_ALL=
Comment 1 Ladislav Michnovic 2005-11-16 18:54:39 UTC
Created attachment 57563 [details]
screenshot
Comment 2 Stefan Dirsch 2005-11-17 11:15:03 UTC
I can only reproduce this, when LC_ALL is set to sk_SK.UTF-8. Doesn't happen when LC_ALL is set to de_DE.UTF-8. Very strange ...

I'm using xterm-207.
Comment 3 Ladislav Michnovic 2005-11-18 12:02:48 UTC
Also with cs_CZ.UTF-8 is everything OK. ;(
Comment 4 Stefan Dirsch 2005-11-29 14:42:55 UTC
Thomas, any ideas? Can you reproduce it?
Comment 5 Thomas Dickey 2005-11-29 15:28:40 UTC
no - not outside mc.  I've seen several comments about mc however
regarding poor support for UTF-8.  Perhaps this is a similar case.
I'm running Debian testing, and see that for each case where there
is a non-ASCII character, that mc does display that character, e.g.,
things from the Latin-1 set.  Running in rxvt I also see related
defects  though not as many - probably due to differences in the
font used (some fonts will have no glyph, or encode a zero-width
glyph for a given position).
Comment 6 Stefan Dirsch 2005-11-29 17:38:44 UTC
Vladimir, already heard about this problem? Vladimir is our mc maintainer.
Comment 7 Vladimir Nadvornik 2005-11-29 19:26:42 UTC
I heard about it but now I found some time to look into it :)

The difference of sk_SK.UTF-8 locale seems to be that a non-ascii character
appears in bottom-right corner. 

It is a bug in slang library or mc. It prints an incomplete utf8 sequence followed by a control sequence. The first byte of the control sequence is lost and the rest is printed, causing scroll up. Other terminals handle this situation better.

However, I cant reproduce the behavior without mc mentioned in the original report. Maybe it is another bug.
Comment 8 Thomas Dickey 2005-11-29 19:53:39 UTC
There may well be more than one bug.  On Debian I have mc 4.6.1-1
built with slang2, and see incorrect placement after cells which
have multibyte encoding (the Latin-1 I mentioned).  slang2 has
better UTF-8 support than the patched slang1, but I do not know
how well mc has been integrated with it.

Looking here, I do not see a package for slang2:
http://suse.mirrors.tds.net/pub/opensuse/distribution/SL-10.0-OSS/inst-source/suse/src/

If SuSE's mc is built using slang1 plus the ad hoc UTF-8 patch, I would
expect more (and different) bugs.

It's hard to say whether differences in error-handling by other terminals
are better or worse without a specific example (for instance a typescript
file that one can analyze and replay on the different terminals).

Comment 9 Vladimir Nadvornik 2005-11-30 09:11:52 UTC
We have mc with utf8 patches written by Jakub Jelinek from Red Hat and me.
The patches were not accepted by upstream and debian package does not have 
them AFAIK.

Slang2 was added to SL after 10.0.
With patched slang1 this bug did not appear.

In strace output the sequence looks like this:
"Skon\304\33[24;79Hi\10"

\304 is the first part of multibyte character
\33 is the start of control sequence, which is ignored
[24;79 is printed on the screen, you can see it on the last line on the screenshot.
Comment 10 Vladimir Nadvornik 2006-01-03 15:40:42 UTC
The bug was in SLANG. Fixed.