[Bug 839609] [NEW] [11.10 beta1] UnicodeDecodeError crash on simplified chinese input of fake command

Dennis Chua 839609 at bugs.launchpad.net
Fri Sep 2 14:30:29 UTC 2011


Public bug reported:

The command-not-found package crashes on input of a simplified chinese
character representing a bogus command. The problem was found with in
11.10 beta1, for both the x86/i386 and amd64 systems. Debugging the
python script in /usr/lib/command-not-found shows that a
UnicodeDecodeError is thrown. The crash_guard() callback framework
catches this and reports the error.

Here are further observations.

(1) With the same simplified chinese input, 11.04 handles the test case gracefully, returning a message
    explaining that the command is not found.

(2) Between these two series, python has change: 11.04 (Python 2.7.1+)
versus 11.10 beta1 (Python 2.7.2+).

To elaborate on this problem, the following files have been included:

(1) Screen shots showing step-by-step how to reproduce the bug. As switching to Simplified Chinese is
    difficult to explain in words, a video was taken to show how this process.

(2) A screen shot showing /usr/lib/command-not-found script traced by means of the Python pdb module.
    This shows the zh_CN.UTF-8 byte stream input and the point where UnicodeDecodeError is thrown.

This issue was investigated in 11.10 beta1 host running in VirtualBox.

===

Taken from To_Reproduce_Bug.txt attachment.

01_After_ISO_Installation.png   The VirtualBox VM with default English
locale.

02_Open_Lanugage_Support.png	Prepare to switch to Simplified Chinese locale.
				See the accompanying video for this process.

03_Enable_IBUS_Pinyin.png	After switching to Simplified Chinese. Note the locale 
				environment variables. Click the IBUS keyboard icon 
				and select Pinyin input.

04_Pinyin_Enabled.png           Ready for Pinyin input. Note the blue
IBUS icon.

05_Type_Phonetic_Pinyin.png	Type in two letters: 'w' followed by 'o'. Phonetically these
				correspond to the Chinese character representing 'I' or 'Myself'.
				IBUS displays options. You want the first one. Hit the space
				bar to choose it.

06_Chinese_Input_Complete.png	Chinese 'wo' in zh_CN.UTF-8 is ready to be passed to the Bash.
                                Hit the return key to do so.

07_Crash_command_not_found.png  Bash calls command-not-found, which
can't handle the input.

08_Disable_Pinyin_Input.png     Instruct IBUS to disable Simplified
Chinese input.

ProblemType: Bug
DistroRelease: Ubuntu 11.10
Package: command-not-found 0.2.43ubuntu1 [modified: usr/lib/command-not-found]
ProcVersionSignature: Ubuntu 3.0.0-9.15-generic 3.0.3
Uname: Linux 3.0.0-9-generic x86_64
Architecture: amd64
Date: Fri Sep  2 10:23:08 2011
InstallationMedia: Ubuntu 11.10 "Oneiric Ocelot" - Beta amd64 (20110901)
PackageArchitecture: all
SourcePackage: command-not-found
UpgradeStatus: No upgrade log present (probably fresh install)

** Affects: command-not-found (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: amd64 apport-bug oneiric

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to command-not-found in Ubuntu.
https://bugs.launchpad.net/bugs/839609

Title:
  [11.10 beta1] UnicodeDecodeError crash on simplified chinese input of
  fake command

Status in “command-not-found” package in Ubuntu:
  New

Bug description:
  The command-not-found package crashes on input of a simplified chinese
  character representing a bogus command. The problem was found with in
  11.10 beta1, for both the x86/i386 and amd64 systems. Debugging the
  python script in /usr/lib/command-not-found shows that a
  UnicodeDecodeError is thrown. The crash_guard() callback framework
  catches this and reports the error.

  Here are further observations.

  (1) With the same simplified chinese input, 11.04 handles the test case gracefully, returning a message
      explaining that the command is not found.

  (2) Between these two series, python has change: 11.04 (Python 2.7.1+)
  versus 11.10 beta1 (Python 2.7.2+).

  To elaborate on this problem, the following files have been included:

  (1) Screen shots showing step-by-step how to reproduce the bug. As switching to Simplified Chinese is
      difficult to explain in words, a video was taken to show how this process.

  (2) A screen shot showing /usr/lib/command-not-found script traced by means of the Python pdb module.
      This shows the zh_CN.UTF-8 byte stream input and the point where UnicodeDecodeError is thrown.

  This issue was investigated in 11.10 beta1 host running in VirtualBox.

  ===

  Taken from To_Reproduce_Bug.txt attachment.

  01_After_ISO_Installation.png   The VirtualBox VM with default English
  locale.

  02_Open_Lanugage_Support.png	Prepare to switch to Simplified Chinese locale.
  				See the accompanying video for this process.

  03_Enable_IBUS_Pinyin.png	After switching to Simplified Chinese. Note the locale 
  				environment variables. Click the IBUS keyboard icon 
  				and select Pinyin input.

  04_Pinyin_Enabled.png           Ready for Pinyin input. Note the blue
  IBUS icon.

  05_Type_Phonetic_Pinyin.png	Type in two letters: 'w' followed by 'o'. Phonetically these
  				correspond to the Chinese character representing 'I' or 'Myself'.
  				IBUS displays options. You want the first one. Hit the space
  				bar to choose it.

  06_Chinese_Input_Complete.png	Chinese 'wo' in zh_CN.UTF-8 is ready to be passed to the Bash.
                                  Hit the return key to do so.

  07_Crash_command_not_found.png  Bash calls command-not-found, which
  can't handle the input.

  08_Disable_Pinyin_Input.png     Instruct IBUS to disable Simplified
  Chinese input.

  ProblemType: Bug
  DistroRelease: Ubuntu 11.10
  Package: command-not-found 0.2.43ubuntu1 [modified: usr/lib/command-not-found]
  ProcVersionSignature: Ubuntu 3.0.0-9.15-generic 3.0.3
  Uname: Linux 3.0.0-9-generic x86_64
  Architecture: amd64
  Date: Fri Sep  2 10:23:08 2011
  InstallationMedia: Ubuntu 11.10 "Oneiric Ocelot" - Beta amd64 (20110901)
  PackageArchitecture: all
  SourcePackage: command-not-found
  UpgradeStatus: No upgrade log present (probably fresh install)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/command-not-found/+bug/839609/+subscriptions




More information about the foundations-bugs mailing list