apport-unpack cannot load gitkraken crash report - 'ascii' codec can't decode byte 0xfc in position 56
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Apport |
Fix Released
|
Low
|
Unassigned | ||
apport (Ubuntu) |
Fix Released
|
Low
|
Unassigned | ||
Kinetic |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
Impact
======
apport-unpack and whoopsie-upload-all can crash when fed with a malformed problem report. They should print a proper error message instead of crashing. This bug does not happen that often, but the fix for this bug is the foundation for the fix for bug #1995100.
Test Plan
=========
1. Create malformed report:
```
printf 'AB\xfc:CD\n' > malformed.crash
```
2. Try to unpack it:
```
apport-unpack malformed.crash unpack
```
It should print an error message instead of a stack trace.
Where problems could occur
=======
The patch touches the problem report handling and therefore can affect apport-unpack, apport-bug, whoopsie-
Original report
===============
The latest GitKraken client (8.10.2 x64) is crashed every minute in cycle when you doing a rebase. When I try to inspect crash log to find the reason, the apport-unpack is not be able to process it:
/var/lib/
[sudo] пароль для mingun:
Traceback (most recent call last):
File "/usr/bin/
pr.load(f, binary=False)
File "/usr/lib/
key = key.decode('ASCII')
UnicodeDecodeError: 'ascii' codec can't decode byte 0xfc in position 56: ordinal not in range(128)
Unfortunately, crash file is too big (~9GB) and does not compress further
Changed in apport: | |
milestone: | none → 2.24.0 |
importance: | Undecided → Low |
Changed in apport (Ubuntu): | |
importance: | Undecided → Low |
status: | New → Triaged |
Changed in apport: | |
status: | New → Triaged |
Changed in apport: | |
status: | Fix Committed → Fix Released |
description: | updated |
description: | updated |
Changed in apport: | |
status: | Fix Committed → Fix Released |
Thank you for taking the time to report this bug and helping to make Ubuntu better.
apport-unpack is designed for unpackaging .crash files (in /var/crash). You specified a core file which contains only binary data and is expected to fail. apport-unpack should print an error message in this case.