Unicode exception when parsing some crashes
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Apport |
Fix Released
|
Undecided
|
Unassigned | ||
apport (Debian) |
Fix Released
|
Unknown
|
Bug Description
Package: apport
Version: 2.15.1-1
Severity: important
This behavior seems to be very racy.
ERROR: apport (pid 1148) Wed Jan 14 12:46:21 2015: pid: 1148, uid: 1000, gid: 1000, euid: 0, egid: 0
ERROR: apport (pid 1148) Wed Jan 14 12:46:21 2015: environment: environ({})
ERROR: apport (pid 1278) Wed Jan 14 12:48:05 2015: called for pid 1264, signal 11, core limit 0
ERROR: apport (pid 1278) Wed Jan 14 12:48:05 2015: executable: /bin/sleep (command line "sleep 900")
ERROR: apport (pid 1278) Wed Jan 14 12:48:05 2015: Unhandled exception:
Traceback (most recent call last):
File "/usr/share/
if is_closing_
File "/usr/share/
env = e.read(
File "/usr/lib/
return codecs.
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 2646: ordinal not in range(128)
ERROR: apport (pid 1278) Wed Jan 14 12:48:05 2015: pid: 1278, uid: 1000, gid: 1000, euid: 0, egid: 0
ERROR: apport (pid 1278) Wed Jan 14 12:48:05 2015: environment: environ({})
If the same code is manualy run, e.read() succeeds.
In [4]: pid = "1543"
In [5]: with open('/
env = e.read(
...:
In [6]:
-- System Information:
Debian Release: 8.0
APT prefers testing
APT policy: (990, 'testing'), (500, 'unstable'), (101, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 3.16.0-4-amd64 (SMP w/8 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)
Versions of packages apport depends on:
ii gir1.2-glib-2.0 1.42.0-2.2
ii lsb-base 4.1+Debian13+nmu1
ii python3 3.4.2-2
ii python3-apport 2.15.1-1
ii python3-gi 3.14.0-1
pn python:any <none>
Versions of packages apport recommends:
ii policykit-1 0.105-8
Versions of packages apport suggests:
ii apport-gtk 2.15.1-1
ii apport-kde 2.15.1-1
-- Configuration Files:
/etc/apport/
default = 'debian-debug'
databases = {
'ubuntu': {
'impl': 'launchpad',
'distro': 'ubuntu',
},
'fedora': {
# NOTE this will change Fall '07 when RHT switches to bugzilla 3.x!
'impl': 'rhbugzilla',
'distro': 'fedora'
},
'debian': {
'impl': 'debian',
'distro': 'debian',
'smtphost': 'reportbug.
'sender': ''
},
'debian-debug': {
'impl': 'debian',
'distro': 'debian',
'smtphost': 'localhost',
'recipient': '<email address hidden>',
'sender': '<email address hidden>'
},
'debug': {
# for debugging
'impl': 'memory',
'distro': 'debug'
},
}
/etc/init.d/apport changed:
PATH=/sbin:
. /lib/lsb/
if [ -f /etc/default/apport ]; then
. /etc/default/apport
fi
start() {
[ "$enabled" = "1" ] || [ "$force_start" = "1" ] || exit 0
mkdir -p -m 1777 /var/crash
ulimit -c "unlimited"
# check for kernel crash dump, convert it to apport report
if [ -e /var/crash/vmcore ]
then
log_daemon_msg "Checking for kernel crash dumps"
/usr/share/
log_end_msg 0
fi
log_daemon_msg "Enabling apport service"
echo "|/usr/
log_end_msg 0
}
stop() {
log_daemon_msg "Disabling apport service"
if [ "`dd if=/proc/
then
exit 1
else
echo "core" > /proc/sys/
fi
log_end_msg 0
}
restart() {
stop
start
}
status() {
log_daemon_msg "Checking apport service"
grep -qi "|/usr/
}
case "$1" in
start|
$1
;;
force-reload)
restart
;;
status)
status
;;
*)
echo "Usage: $0 {start|
exit 1;
;;
esac
-- debconf-show failed
Changed in apport (Debian): | |
status: | Unknown → New |
Changed in apport (Debian): | |
status: | New → Fix Released |
This was fixed upstream in r2940, released in 2.17.1.