[Bug 155700] New: KRun.init can trigger assertion failure in KAuthorizedPrivate() (empty applicationName)

dAniel hAhler kde-bugzilla at thequod.de
Mon Jan 14 00:47:45 CET 2008


------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
         
http://bugs.kde.org/show_bug.cgi?id=155700         
           Summary: KRun.init can trigger assertion failure in
                    KAuthorizedPrivate() (empty applicationName)
           Product: krunner
           Version: unspecified
          Platform: Ubuntu Packages
        OS/Version: Linux
            Status: NEW
          Severity: crash
          Priority: NOR
         Component: general
        AssignedTo: panel-devel kde org
        ReportedBy: kde-bugzilla thequod de


Version:            (using KDE KDE 4.0.0)
Installed from:    Ubuntu Packages

"kfmclient openURL http://kde.org text/html" triggers an assertion failure in kde4libs-4.0.0/kdecore/kernel/kauthorized.cpp, line 195 - if you have configured a default browser to use in "Default applications".

The reason is that KRun is instantiated in kdebase-kde4-4.0.0/apps/konqueror/client/kfmclient.cpp and it appears that no application name is set then.

My proposed patch fixes this in kde4libs-4.0.0/kio/kio/krun.cpp, where the given URL is used to set the applicationName, if it isn't set yet, so that the following call to KAuthorized::authorizeUrlAction() will not cause the assert to fail.

Here's the output with non-patched kde4libs:
$ LANG=C kfmclient-kde4 openURL http://kde.org text/html
kfmclient(20835) ClientApp::doIt: Creating ClientApp
kfmclient(20835)/konqueror ClientApp::createNewWindow: ClientApp::createNewWindow "http://kde.org" mimetype= "text/html"
kfmclient(20835) ClientApp::createNewWindow: "!konqueror"
kfmclient(20835)/kio (KRun) KRun::KRunPrivate::init: new KRun KRun(0x8104220) "http://kde.org" timer= QTimer(0x8103ac0, name = "KRun::timer")
kfmclient(20835)/kio (KRun) KRun::slotTimeout: KRun(0x8104220) slotTimeout called
kfmclient(20835)/kio (KRun) KRun::init: INIT called
ASSERT failure in KAuthorizedPrivate(): "There has to be an application name set (See QCoreApplication::instance()->setApplicationName)", file /build/buildd/kde4libs-4.0.0/kdecore/kernel/kauthorized.cpp, line 195
Aborted (core dumped)

I've reported the bug for Ubuntu at https://launchpad.net/bugs/182718


More information about the Panel-devel mailing list