Bug 293615 - kcmshell4 system-config-printer-kde hangs long and then crashes
Summary: kcmshell4 system-config-printer-kde hangs long and then crashes
Status: RESOLVED UNMAINTAINED
Alias: None
Product: system-config-printer-kde
Classification: Unmaintained
Component: general (show other bugs)
Version: unspecified
Platform: Gentoo Packages Linux
: NOR crash
Target Milestone: ---
Assignee: Jonathan Riddell
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-02-08 09:31 UTC by Oliver Maurhart
Modified: 2013-11-25 05:58 UTC (History)
5 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Oliver Maurhart 2012-02-08 09:31:13 UTC
Version:           unspecified (using KDE 4.8.0) 
OS:                Linux

Using KDE4.8. In the systemsettings clicking Printer Config renders the whole systemsettings useless, since then the kcmshell4 hangs, showing me a busy cursor.

Then I tried in the konsole: $ kcmshell4 system-config-printer-kde

Which takes looooooong time, to finally crash:

$ kcmshell4 system-config-printer-kde
Caught non-fatal exception.  Traceback:
File "/usr/share/apps/system-config-printer-kde/system-config-printer-kde.py", line 734, in setDataButtonState
    printable = (self.ppd != None and
AttributeError: 'GUI' object has no attribute 'ppd'
Continuing anyway..
KCrash: Application 'kcmshell4' crashing...
Fatal Error: Accessed global static 'KGlobalPrivate *globalData()' after destruction. Defined at /var/tmp/portage/kde-base/kdelibs-4.8.0-r1/work/kdelibs-4.8.0/kdecore/kernel/kglobal.cpp:127
Unable to start Dr. Konqi


However I can configure my printers well at http://localhost:631 and also printing (like PDF via okular) does work.

Reproducible: Didn't try

Steps to Reproduce:
Installed KDE4.8, open SystemSettings, click on Printer.


Expected Results:  
Show Printer config dialog.
Don't crash.
Comment 1 Giuseppe Calà 2012-02-22 12:32:42 UTC
I confirm the bug. Same error here in Chakra Linux 64bit with kde 4.8.0
Comment 2 Schoelje 2012-07-16 09:54:54 UTC
Confirmed on Debian with KDE (4.7)
Workaround:
kdesudo kcmshell4 system-config-printer-kde
or
sudo apt-get purge system-config-printer-kde && sudo apt-get install system-config-printer

inxi -Srxxx
System:    Host lmdekde Kernel 3.2.0-2-amd64 x86_64 (64 bit) Distro Linux Mint Debian Edition
Repos:     Active apt sources in file: /etc/apt/sources.list
           deb http://packages.linuxmint.com/ debian main upstream import
           deb http://debian.linuxmint.com/latest testing main contrib non-free
           deb http://debian.linuxmint.com/latest/security testing/updates main contrib non-free
           deb http://debian.linuxmint.com/latest/multimedia testing main non-free
Comment 3 Schoelje 2012-07-16 21:52:13 UTC
Running strace on kcmshell4 system-config-printer-kde I see an infinite loop:

open("/etc/passwd", O_RDONLY|O_CLOEXEC) = 16
lseek(16, 0, SEEK_CUR)                  = 0
fstat(16, {st_mode=S_IFREG|0644, st_size=1712, ...}) = 0
mmap(NULL, 1712, PROT_READ, MAP_SHARED, 16, 0) = 0x7f39070eb000
lseek(16, 1712, SEEK_SET)               = 1712
fstat(16, {st_mode=S_IFREG|0644, st_size=1712, ...}) = 0
munmap(0x7f39070eb000, 1712)            = 0
close(16)                               = 0
open("/var/run/cups/certs/4885", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/var/run/cups/certs/0", O_RDONLY) = -1 EACCES (Permission denied)
close(15)                               = 0
socket(PF_FILE, SOCK_STREAM, 0)         = 15
setsockopt(15, SOL_SOCKET, SO_REUSEADDR, [1], 4) = 0
setsockopt(15, SOL_TCP, TCP_NODELAY, [1], 4) = -1 EOPNOTSUPP (Operation not supported)
fcntl(15, F_SETFD, FD_CLOEXEC)          = 0
connect(15, {sa_family=AF_FILE, path="/var/run/cups/cups.sock"}, 26) = 0
close(15)                               = 0
socket(PF_FILE, SOCK_STREAM, 0)         = 15
setsockopt(15, SOL_SOCKET, SO_REUSEADDR, [1], 4) = 0
setsockopt(15, SOL_TCP, TCP_NODELAY, [1], 4) = -1 EOPNOTSUPP (Operation not supported)
fcntl(15, F_SETFD, FD_CLOEXEC)          = 0
connect(15, {sa_family=AF_FILE, path="/var/run/cups/cups.sock"}, 26) = 0
time(NULL)                              = 1342475030
time(NULL)                              = 1342475030
time(NULL)                              = 1342475030
time(NULL)                              = 1342475030
time(NULL)                              = 1342475030
time(NULL)                              = 1342475030
time(NULL)                              = 1342475030
time(NULL)                              = 1342475030
sendto(15, "POST / HTTP/1.1\r\nAuthorization: "..., 160, 0, NULL, 0) = 160
time(NULL)                              = 1342475030
time(NULL)                              = 1342475030
time(NULL)                              = 1342475030
time(NULL)                              = 1342475030
sendto(15, "\1\1@\v\0\0\0\1\1G\0\22attributes-charset\0\5"..., 75, 0, NULL, 0) = 75
poll([{fd=15, events=POLLIN}], 1, 1000) = 1 ([{fd=15, revents=POLLIN}])
poll([{fd=15, events=POLLIN}], 1, 60000) = 1 ([{fd=15, revents=POLLIN}])
recvfrom(15, "HTTP/1.1 100 Continue\r\n\r\nHTTP/1."..., 2048, 0, NULL, NULL) = 809
time(NULL)                              = 1342475030
time(NULL)                              = 1342475030
time(NULL)                              = 1342475030
time(NULL)                              = 1342475030
time(NULL)                              = 1342475030
time(NULL)                              = 1342475030
time(NULL)                              = 1342475030
time(NULL)                              = 1342475030
time(NULL)                              = 1342475030
time(NULL)                              = 1342475030
time(NULL)                              = 1342475030
time(NULL)                              = 1342475030
time(NULL)                              = 1342475030
time(NULL)                              = 1342475030
Comment 4 Schoelje 2012-07-16 22:05:44 UTC
Thanks to the trace I found out that /var/run/cups/certs/0 is opened.
Policies on this file says that group lpadmin has read permission.
My user did not belong to the lpadmin group.

After adding the user to the lpadmin group, the new printer dialogue pops up.

Can anyone confirm this?
Comment 5 Nikolay 2012-12-20 01:53:54 UTC
Confirmed on Gentoo 3.5.7 KDE 4.9.3.
Comment 6 Christoph Feck 2013-11-23 20:31:44 UTC
"system-config-printer-kde" is no longer maintained and has been replaced with "Print Manager" since KDE 4.10. The new version is a C++ rewrite of the old Python version, and may still lack some features or have some bugs.

If this or another issue still needs to be addressed in KDE 4.10 or newer, please add a comment, or report it for "Print Manager".
Comment 7 Schoelje 2013-11-23 22:36:19 UTC
Thanks for the heads-up.
I confirm that using print-manager with KDE 4.10 is the preferred way.
Comment 8 Oliver Maurhart 2013-11-25 05:58:30 UTC
m2: KDE SystemSettings on 4.11 here - Printer Settings is working smooth.