** Description changed:

+ [Impact]
+ Ubuntu crash reports and package installation failures may not include 
DpkgTerminalLog.txt if there is a UnicodeDecodeError trying to read the dpkg 
log file.
+ 
+ [Test Case]
+ Because the fix is simple and its complicated to have a dpkg log file with 
unicode in it we'll just test that truncating of a dpkg log file still works.
+ 
+ 1) Install 2vcard (so we have a recent dpkg log entry)
+ 2) Run update-manager
+ 3) Kill it with signal 11 e.g. kill -11 $PID of update-manager
+ 4) Run ubuntu-bug /var/crash/_usr_bin_update-manager.1000.crash
+ 5) Observe DpkgTerminalLog.txt only contains a log entry regarding the 
installation of 2vcard and matches the content in /var/log/apt/term.log.
+ 
+ [Regression Potential]
+ Its possible that the code to replace the DpkgTerminalLog contents of the 
report is wrong but the test case above ensures that it isn't.
+ 
+ [Original Description]
  Hi,
  
  here is a python exception I got while reporting a bug:
  
  Traceback (most recent call last):
-   File "/usr/lib/python3/dist-packages/apport/report.py", line 198, in 
_run_hook
-     symb['add_info'](report, ui)
-   File "/usr/share/apport/general-hooks/ubuntu.py", line 89, in add_info
-     check_attachment_for_errors(report, attachment)
-   File "/usr/share/apport/general-hooks/ubuntu.py", line 208, in 
check_attachment_for_errors
-     trim_dpkg_log(report)
-   File "/usr/share/apport/general-hooks/ubuntu.py", line 508, in trim_dpkg_log
-     report['DpkgTerminalLog'] = '\n'.join([str(line.decode('utf-8')) for line 
in lines])
-   File "/usr/share/apport/general-hooks/ubuntu.py", line 508, in <listcomp>
-     report['DpkgTerminalLog'] = '\n'.join([str(line.decode('utf-8')) for line 
in lines])
+   File "/usr/lib/python3/dist-packages/apport/report.py", line 198, in 
_run_hook
+     symb['add_info'](report, ui)
+   File "/usr/share/apport/general-hooks/ubuntu.py", line 89, in add_info
+     check_attachment_for_errors(report, attachment)
+   File "/usr/share/apport/general-hooks/ubuntu.py", line 208, in 
check_attachment_for_errors
+     trim_dpkg_log(report)
+   File "/usr/share/apport/general-hooks/ubuntu.py", line 508, in trim_dpkg_log
+     report['DpkgTerminalLog'] = '\n'.join([str(line.decode('utf-8')) for line 
in lines])
+   File "/usr/share/apport/general-hooks/ubuntu.py", line 508, in <listcomp>
+     report['DpkgTerminalLog'] = '\n'.join([str(line.decode('utf-8')) for line 
in lines])
  UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe2 in position 3070: 
invalid continuation byte
  
  It can also be seen here:
  
-   https://launchpadlibrarian.net/367002573/HookError_ubuntu.txt
+   https://launchpadlibrarian.net/367002573/HookError_ubuntu.txt
  
- ProblemType: Bug
- DistroRelease: Ubuntu 18.04
+ ProblemType: BugDistroRelease: Ubuntu 18.04
  Package: apport 2.20.9-0ubuntu6
  Uname: Linux 4.16.3-041603-generic x86_64
  ApportLog:
-  
+ 
  ApportVersion: 2.20.9-0ubuntu6
  Architecture: amd64
  CurrentDesktop: MATE
  Date: Mon Apr 23 20:13:24 2018
  PackageArchitecture: all
  ProcEnviron:
-  TERM=xterm
-  PATH=(custom, no user)
-  XDG_RUNTIME_DIR=<set>
-  LANG=en_US.UTF-8
-  SHELL=/bin/bash
- SourcePackage: apport
+  TERM=xterm
+  PATH=(custom, no user)
+  XDG_RUNTIME_DIR=<set>
+  LANG=en_US.UTF-8
+  SHELL=/bin/bashSourcePackage: apport
  UpgradeStatus: No upgrade log present (probably fresh install)

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1766337

Title:
  uncaught python exception : UnicodeDecodeError: 'utf-8' codec can't
  decode byte; invalid continuation byte

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/apport/+bug/1766337/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to