Summary: | "The process for the media protocol died unexpectedly." - open unmounted cd/dvd in new window from kicker media applet | ||
---|---|---|---|
Product: | [Frameworks and Libraries] kio | Reporter: | Ruben Jenster <rjenster> |
Component: | media | Assignee: | Kevin Ottens <ervin> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | greg_g |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Gentoo Packages | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: |
Description
Ruben Jenster
2005-03-21 14:17:48 UTC
I must correct: This does not only apply for mounting from the kicker applet but also when mounting from konqueror services. Im (un)happy to see that I'm not the only one having this problem. http://forums.gentoo.org/viewtopic-t-312047-highlight-.html Please tell me if this is a general bug. So I know where to look for. Regards Ruben I have hard time reproducing this one to be honest... Could you answer those simple questions: 1) Do you use HAL? And if it's the case please give me the HAL, and DBUS versions you use. 2) Do you have pmount installed? Does installing/removing it changes something? Moreover I'd be glad if you could give me more output. Please check that your KDE install is done with debug output activated. If that's the case please follow those instructions: 1) Login in your KDE 3.4 session 2) Open a konsole 3) execute "killall kded" 4) launch "kded &" 5) launch "kdeinit &" 6) launch "konqueror" From the opened konqueror window, try to reproduce the bug and give me the debug output starting just before the mount action is requested. I know it's maybe lot of work, but since I can't reproduce it here, please help me. ;-) Thanks in advance. Installing pmount solves this problem! Thanks for your help. Regards Ruben Reopening it... It mustn't not die when pmount is not installed. That's clearly a bug, it must be solved. I still can't reproduce it... even with pmount uninstalled. Could you give me your fstab content? And your HAL+DBUS versions (if you use them)? I first compiled whole kde on hal-0.4.5 and dbus-0.23. After recognizing this problem I installed hal-0.4.7 and dbus 0.23.4 and remerged the kioslaves part of kdebase. # This file is edited by fstab-sync - see 'man fstab-sync' for details /dev/hda1 none swap sw 0 0 /dev/hda5 / reiser4 defaults 0 1 /dev/hda6 /home reiser4 defaults 0 2 /dev/hdb1 /mnt/hdb1 reiser4 noauto,user 0 2 none /proc proc defaults 0 0 none /dev/shm tmpfs defaults 0 0 /dev/hdd /media/cdrecorder auto user,exec,noauto,managed 0 0 /dev/hdc /media/cdrecorder1 auto user,exec,noauto,managed 0 0 I still can't reproduce it... I tried with and without pmount. Really weird. I have the same problem, also on gentoo. I disabled fstab-sync in hal and I don't have pmount installed. I have a entry in my /etc/fstab saying: /dev/hdd /mnt/cdrom auto user,noauto 0 0 when I just type mount /mnt/cdrom it mounts and is accessible through file://mnt/cdrom hald and dbus are running and the moment I insert a CD (but don't mount it yet) it shows up on my desktop (and in media://) so far so good. clicking the icon even mounts the cd (also good, since it is in fstab I don't need fstab-sync or pmount) but then the process dies and I can't access the cd through media:// only through file://mnt/cdrom in my .xsession-errors I get these: when inserting cd: libhal.c 911 : Error sending msg: No property info.category on device with id /org/freedesktop/Hal/devices/ide_1_1 when clicking the cd-icon: Launched ok, pid = 2380 sh: line 1: pmount: command not found QWidget: Cannot create a QWidget when no GUI is being used kioslave: ####### CRASH ###### protocol = media pid = 2381 signal = 11 kio (KIOConnection): ERROR: Header read failed, errno=104 kio (KIOConnection): ERROR: Header has invalid size (-1) when closing konqueror media://hdd kio (KDirWatch): WARNING: KDirWatch::removeDir can't handle '/hdd' I'm using hal 0.4.5 and dbus 0.23 any suggestions/help? I still can't reproduce this one... It really seems to be linked to pmount being available or not. Please try to install it, and then uninstall it. If it works when pmount is here, but crash when it's not here, I'll prepare a patch for you so that I can have more debug output. I'm waiting news from you and your aknowledge to reopen it... I made a new clean install on my laptop: with pmount it works without pmount it doesn't work [ same behaviour as before ] Nothing has changed. I have tried all version of hal and dbus everytime the same behaviour. Regards Ruben And I installed pmount but the problem is still there. Like I already said, the problem is not about mounting, the mounting itself works with pmount, fstab-sync, and with a static entry in fstab. in all 3 cases the cd appears on my desktop when it gets inserted. when I click it, it gets mounted, but the media:// protocol dies. when I click it again, the same happens. The medium gets mounted and is accessible through file://media So I'm pretty sure the problem lies in the media-protocol-handler itself, rather than in the mount-method. I will rebuild parts of kde with debug-output now so I'll post the messages soon. Here I have some debug output. Like I said before, the problem seems not to be mount-related. I've tried pmount, fstab-sync and just a plain entry in fstab... in all cases the behaviour is the same. on inserting a cd, the icon appears. when I click it, it mounts ok, but then the media kioslave dies. I hope this helps: kded: HALBackend::hal_property_modified /org/freedesktop/Hal/devices/block_22_64 -- block.have_scanned kded: HALBackend::hal_device_added /org/freedesktop/Hal/devices/block_KNOPPIX kded: MediaList::findById(/org/freedesktop/Hal/devices/block_KNOPPIX) kded: HALBackend::setVolumeProperties for /org/freedesktop/Hal/devices/block_KNOPPIX libhal.c 911 : Error sending msg: No property info.category on device with id /org/freedesktop/Hal/devices/ide_1_1 kded: MediaList::addMedium(@/org/freedesktop/Hal/devices/block_KNOPPIX) kded: MediaList emits mediumAdded(/org/freedesktop/Hal/devices/block_KNOPPIX, hdd) kded: MediaManager::slotMediumAdded: hdd kded: MediaDirNotify::toMediaURL(media:/) kded: MediaList::list() kded: KURL() kded: RemoteDirNotify::FilesAdded kded: RemoteDirNotify::toRemoteURL(media:/) kded: result => KURL() kio (KDirListerCache): [virtual void KDirListerCache::FilesAdded(const KURL&)] media:/ kio (KDirListerCache): [void KDirListerCache::updateDirectory(const KURL&)] media:/ kio (KDirListerCache): [void KDirListerCache::updateDirectory(const KURL&)] Killed = false kio (KDirListerCache): [void KDirListerCache::updateDirectory(const KURL&)] update started in media:/ kio_media: MediaProtocol::listDir: media:/ kio_media: MediaImpl::listMedia kded: MediaList::list() kio_media: MediaProtocol::createMedium kio_media: url = media:/hda1, mime = media/hdd_unmounted kio_media: MediaProtocol::createMedium kio_media: url = media:/hdc3, mime = media/hdd_mounted kio (KIOJob): stat file:///mnt/data kio_file: FileProtocol::stat details=2 kio_media: MediaProtocol::createMedium kio_media: url = media:/hdd, mime = media/cdwriter_unmounted kio (KDirListerCache): [void KDirListerCache::slotUpdateResult(KIO::Job*)] finished update media:/ kio (KTrader): query for ThumbCreator : returning 7 offers kio (KTrader): query for ThumbCreator : returning 7 offers kio (KLauncher): KLauncher: Got start_service_by_desktop_path('/usr/kde/3.4/share/applications/kde/kfmclient_dir.desktop', ...) kdeinit: Got EXT_EXEC 'kfmclient' from launcher. Could not load library! Trying exec.... kio (KLauncher): kfmclient (pid 2152) up and running. DCOP: register 'anonymous-2152' -> number of clients is now 10 kio (KSycoca): Trying to open ksycoca from /tmp/kdecache-troxx/ksycoca kio (KTrader): query for inode/directory, KParts/ReadOnlyPart : returning 8 offers kdeinit: Got SHELL 'konqueror' from socket. DCOP: unregister 'anonymous-2152' kdeinit: PID 2152 terminated. Could not load library! Trying exec.... kdeinit: PID 2154 terminated. DCOP: register 'konqueror-2155' -> number of clients is now 10 Launched ok, pid = 2155 kio (KSycoca): Trying to open ksycoca from /tmp/kdecache-troxx/ksycoca kio (KTrader): query for KURIFilter/Plugin : returning 4 offers kio (KTrader): query for Browser/View : returning 17 offers kparts: MainWindow::createGUI, part=(nil) kio (KTrader): query for Browser/View, KParts/ReadOnlyPart : returning 17 offers kdeui (KDockWidget): : KDockWidget::setHeader kdeui (KDockWidget): KDockWidgetHeader::showUndockButton(true) kdeui (KDockWidget): KDockWidgetHeader::showUndockButton(false) kio (KTrader): query for inode/directory, Application : returning 0 offers kio (KTrader): query for inode/directory, KParts/ReadOnlyPart : returning 8 offers kparts: found KParts Plugin : /usr/kde/3.4/share/apps/konqiconview/kpartplugins/kremoteencodingplugin.rc kparts: found KParts Plugin : /usr/kde/3.4/share/apps/konqiconview/kpartplugins/kshellcmdplugin.rc kparts: load plugin kparts: load plugin kio (KTrader): query for ThumbCreator : returning 7 offers kio (KDirLister): +KDirLister kio (KDirListerCache): +KDirListerCache kio (KDirWatch): Available methods: Stat, FAM, DNotify kparts: 0x8101c88 emitting activePartChanged 0x823ad18 kparts: MainWindow::createGUI, part=0x823ad18 KonqKfmIconView kio (KDirLister): [virtual bool KDirLister::openURL(const KURL&, bool, bool)] media:/hdd keep=false reload=false kio (KDirListerCache): [void KDirListerCache::listDir(KDirLister*, const KURL&, bool, bool)] 0x8275398 url=media:/hdd keep=false reload=false kio (KDirListerCache): [void KDirListerCache::stop(KDirLister*)] lister: 0x8275398 kio (KDirListerCache): [void KDirListerCache::forgetDirs(KDirLister*)] 0x8275398 kio (KTrader): query for ThumbCreator : returning 7 offers kio (KTrader): query for ThumbCreator : returning 7 offers kio (KDirListerCache): listDir: Entry not in cache or reloaded: media:/hdd konqueror: KMultiTabBarTab::updateState(): setting text to an empty QString*************** konqueror: KMultiTabBarTab::updateState(): setting text to an empty QString*************** konqueror: KMultiTabBarTab::updateState(): setting text to an empty QString*************** konqueror: KMultiTabBarTab::updateState(): setting text to an empty QString*************** konqueror: KMultiTabBarTab::updateState(): setting text to an empty QString*************** konqueror: KMultiTabBarTab::updateState(): setting text to an empty QString*************** kdeui (KDockWidget): : KDockWidget::setHeader kdeui (KDockWidget): KDockWidgetHeader::showUndockButton(true) kio (KDirLister): +KDirLister kio (KDirLister): [virtual bool KDirLister::openURL(const KURL&, bool, bool)] file:///home/troxx keep=true reload=false kio (KDirListerCache): [void KDirListerCache::listDir(KDirLister*, const KURL&, bool, bool)] 0x82c4a88 url=file:///home/troxx keep=true reload=false kio (KDirListerCache): listDir: Entry not in cache or reloaded: file:///home/troxx kio (KDirWatch): Added Dir /home/troxx [KDirWatch-1] kio (KDirWatch): Setup FAM (Req 1) for /home/troxx kdeui (KDockWidget): KDockWidgetHeader::showUndockButton(false) kdeinit: Got EXEC_NEW 'kio_media' from launcher. DCOP: register 'kio_media-2156' -> number of clients is now 11 DCOP: unregister 'kio_media-2156' DCOP: register 'anonymous-2156' -> number of clients is now 11 kio (KLauncher): kio_media (pid 2156) up and running. kio_file: ========= LIST file:///home/troxx ========= kio_file: ============= COMPLETED LIST ============ kio_file: =============== BYE =========== kio (KSycoca): Trying to open ksycoca from /tmp/kdecache-troxx/ksycoca kio_media: MediaProtocol::listDir: media:/hdd kio_media: ForwardingSlaveBase::listDir: media:/hdd kded: MediaList::findByName(hdd) kio (KIOJob): Starting kio_uiserver kio (KLauncher): KLauncher: Got start_service_by_desktop_path('kio_uiserver.desktop', ...) kdeinit: Got EXT_EXEC 'kio_uiserver' from launcher. Could not load library! Trying exec.... kio (KLauncher): kio_uiserver (pid 2157) up and running. kio (KDirListerCache): [void KDirListerCache::slotEntries(KIO::Job*, const KIO::UDSEntryList&)] new entries for file:///home/troxx kio: KSambaShare: Could not found smb.conf! kio: KNFSShare: Could not found exports file! DCOP: register 'kio_uiserver' -> number of clients is now 12 kio (KIOJob): startServiceByDesktopPath returned 0 kio (KIOJob): kio_uiserver registered DCOP: register 'anonymous-2157' -> number of clients is now 13 kio (KDirListerCache): [void KDirListerCache::slotResult(KIO::Job*)] finished listing file:///home/troxx DCOP: new daemon kio_uiserver DCOP: unregister 'anonymous-2157' kdeinit: PID 2157 terminated. kio (UIServer): UIServer::newJob observerAppId=anonymous-2156. Giving id=1 kdeinit: Got EXEC_NEW 'kio_file' from launcher. kio_file: Starting 2159 kio (KLauncher): kio_file (pid 2159) up and running. kio_file: MOUNTING fstype= dev=/dev/hdd point= ro=false sh: line 1: pmount: command not found kio_file: FileProtocol::mount _fstype= kio_file: /bin/mount '/dev/hdd' 2>/tmp/kde-troxx/kio_fileP0oIRb.tmp kio (UIServer): UIServer::mounting 1 /dev/hdd kio_file: mount got a warning: mount: block device /dev/hdd is write-protected, mounting read-only kio_file: QWidget: Cannot create a QWidget when no GUI is being used kioslave: ####### CRASH ###### protocol = media pid = 2156 signal = 11 /usr/kde/3.4/lib/libkio.so.4(_ZN3KIO9SlaveBase15sigsegv_handlerEi+0xe3)[0x44134dd3] /usr/qt/3/lib/libqt-mt.so.3(_ZN7QWidgetC2EPS_PKcj+0x14f)[0x43594cbf] /usr/qt/3/lib/libqt-mt.so.3(_ZN7QDialogC2EP7QWidgetPKcbj+0x45)[0x436f06e5] /usr/kde/3.4/lib/libkdeui.so.4(_ZN7KDialogC2EP7QWidgetPKcbj+0x43)[0x43e82893] DCOP: unregister 'anonymous-2156' kio (Slave): slave died pid = 2156 kio (KDirListerCache): [void KDirListerCache::slotResult(KIO::Job*)] finished listing media:/hdd kdeinit: PID 2156 terminated. kio (KIOConnection): ERROR: Header read failed, errno=104 kio (KIOConnection): ERROR: Header has invalid size (-1) Ok! I'm now able to reproduce it. Thanks a lot for the input. I'm now working on it. CVS commit by ervin: Add the ability to disable message box use from Jobs, because the can be used with a KApplication with gui disabled (and then make it crash). CCBUGS:102086 M +18 -3 job.cpp 1.436 M +19 -0 jobclasses.h 1.159 --- kdelibs/kio/kio/job.cpp #1.435:1.436 @@ -82,9 +82,10 @@ class Job::JobPrivate { public: - JobPrivate() : m_autoErrorHandling( false ), m_parentJob( 0L ), m_extraFlags(0), + JobPrivate() : m_autoErrorHandling( false ), m_interactive( true ), m_parentJob( 0L ), m_extraFlags(0), m_processedSize(0) {} bool m_autoErrorHandling; + bool m_interactive; QGuardedPtr<QWidget> m_errorParentWidget; // Maybe we could use the QObject parent/child mechanism instead @@ -312,4 +313,14 @@ bool Job::isAutoErrorHandlingEnabled() c } +void Job::setInteractive(bool enable) +{ + d->m_interactive = enable; +} + +bool Job::isInteractive() const +{ + return d->m_interactive; +} + void Job::setWindow(QWidget *window) { @@ -554,4 +565,6 @@ void SimpleJob::slotError( int error, co void SimpleJob::slotWarning( const QString & errorText ) { + if (!isInteractive()) return; + static uint msgBoxDisplayed = 0; if ( msgBoxDisplayed == 0 ) // don't bomb the user with message boxes, only one at a time @@ -2599,4 +2612,5 @@ void CopyJob::statCurrentSrc() if (m_mode == Move && !KProtocolInfo::supportsDeleting(m_currentSrcURL)) { QGuardedPtr<CopyJob> that = this; + if (isInteractive()) KMessageBox::information( 0, buildErrorString(ERR_CANNOT_DELETE, m_currentSrcURL.prettyURL())); if (that) @@ -3917,4 +3931,5 @@ void DeleteJob::statNextSrc() QGuardedPtr<DeleteJob> that = this; ++m_currentStat; + if (isInteractive()) KMessageBox::information( 0, buildErrorString(ERR_CANNOT_DELETE, m_currentURL.prettyURL())); if (that) --- kdelibs/kio/kio/jobclasses.h #1.158:1.159 @@ -179,4 +179,21 @@ namespace KIO { /** + * Enable or disable the message display from the job. + * + * The default is true. + * @param enable enable or disable message display + * @since 3.4.1 + */ + void setInteractive(bool enable); + + /** + * Returns whether message display is enabled or disabled. + * See also setInteractive . + * @return true if message display is enabled + * @see setInteractive() + * @since 3.4.1 + */ + bool isInteractive() const; + /** * Associate this job with a window given by @p window. * @param window the window to associate to @@ -1487,4 +1504,6 @@ namespace KIO { * If the program doesn't want CopyJob to show dialogs, but to simply fail on error, * call setInteractive( false ). + * + * KDE4: remove, already in Job * @since 3.4 */ CVS commit by ervin: Add the ability to disable message box use from Jobs, because the can be used with a KApplication with gui disabled (and then make it crash). Backporting to 3.4.x branch. CCBUGS:102086 M +18 -3 job.cpp 1.431.2.3 M +19 -0 jobclasses.h 1.153.2.3 --- kdelibs/kio/kio/job.cpp #1.431.2.2:1.431.2.3 @@ -82,9 +82,10 @@ class Job::JobPrivate { public: - JobPrivate() : m_autoErrorHandling( false ), m_parentJob( 0L ), m_extraFlags(0), + JobPrivate() : m_autoErrorHandling( false ), m_interactive( true ), m_parentJob( 0L ), m_extraFlags(0), m_processedSize(0) {} bool m_autoErrorHandling; + bool m_interactive; QGuardedPtr<QWidget> m_errorParentWidget; // Maybe we could use the QObject parent/child mechanism instead @@ -312,4 +313,14 @@ bool Job::isAutoErrorHandlingEnabled() c } +void Job::setInteractive(bool enable) +{ + d->m_interactive = enable; +} + +bool Job::isInteractive() const +{ + return d->m_interactive; +} + void Job::setWindow(QWidget *window) { @@ -550,4 +561,6 @@ void SimpleJob::slotError( int error, co void SimpleJob::slotWarning( const QString & errorText ) { + if (!isInteractive()) return; + static uint msgBoxDisplayed = 0; if ( msgBoxDisplayed == 0 ) // don't bomb the user with message boxes, only one at a time @@ -2593,4 +2606,5 @@ void CopyJob::statCurrentSrc() if (m_mode == Move && !KProtocolInfo::supportsDeleting(m_currentSrcURL)) { QGuardedPtr<CopyJob> that = this; + if (isInteractive()) KMessageBox::information( 0, buildErrorString(ERR_CANNOT_DELETE, m_currentSrcURL.prettyURL())); if (that) @@ -3911,4 +3925,5 @@ void DeleteJob::statNextSrc() QGuardedPtr<DeleteJob> that = this; ++m_currentStat; + if (isInteractive()) KMessageBox::information( 0, buildErrorString(ERR_CANNOT_DELETE, m_currentURL.prettyURL())); if (that) --- kdelibs/kio/kio/jobclasses.h #1.153.2.2:1.153.2.3 @@ -179,4 +179,21 @@ namespace KIO { /** + * Enable or disable the message display from the job. + * + * The default is true. + * @param enable enable or disable message display + * @since 3.4.1 + */ + void setInteractive(bool enable); + + /** + * Returns whether message display is enabled or disabled. + * See also setInteractive . + * @return true if message display is enabled + * @see setInteractive() + * @since 3.4.1 + */ + bool isInteractive() const; + /** * Associate this job with a window given by @p window. * @param window the window to associate to @@ -1487,4 +1504,6 @@ namespace KIO { * If the program doesn't want CopyJob to show dialogs, but to simply fail on error, * call setInteractive( false ). + * + * KDE4: remove, already in Job * @since 3.4 */ CVS commit by ervin: Avoid displaying messagebox while mounting. If mount issues a warning it makes the ioslave crash (since it is a KApplication with nogui) CCBUGS:102086 M +1 -0 mediaimpl.cpp 1.8 --- kdebase/kioslave/media/mediaimpl.cpp #1.7:1.8 @@ -230,4 +230,5 @@ bool MediaImpl::ensureMediumMounted(Medi medium.deviceNode(), medium.mountPoint()); + job->setInteractive(false); connect( job, SIGNAL( result( KIO::Job * ) ), this, SLOT( slotMountResult( KIO::Job * ) ) ); CVS commit by ervin: Avoid displaying messagebox while mounting. If mount issues a warning it makes the ioslave crash (since it is a KApplication with nogui) Backporting to 3.4.x branch. BUGS:102086 M +1 -0 mediaimpl.cpp 1.7.2.1 --- kdebase/kioslave/media/mediaimpl.cpp #1.7:1.7.2.1 @@ -230,4 +230,5 @@ bool MediaImpl::ensureMediumMounted(Medi medium.deviceNode(), medium.mountPoint()); + job->setInteractive(false); connect( job, SIGNAL( result( KIO::Job * ) ), this, SLOT( slotMountResult( KIO::Job * ) ) ); Thanks for the effort, but it doesn't work. The problem is not in the dialog box I think. Before applying your patch, I did (sometimes) see the boxes with mount's output. After applying the patch, I don't see them anymore. The crash is also gone, which is good. But now the device gets mounted (fstab-sync, pmount, static-fstab all the same) and the media-kioslave doesn't report back to konqueror. so the K-Gear-thingy keeps on spinning, like on a slow website. so the mounting works (it already did before the patch) but it still doesn't display anything. output: kded: HALBackend::hal_property_modified /org/freedesktop/Hal/devices/block_22_64 -- block.have_scanned kded: HALBackend::hal_device_added /org/freedesktop/Hal/devices/block_KNOPPIX kded: MediaList::findById(/org/freedesktop/Hal/devices/block_KNOPPIX) kded: HALBackend::setVolumeProperties for /org/freedesktop/Hal/devices/block_KNOPPIX libhal.c 911 : Error sending msg: No property info.category on device with id /org/freedesktop/Hal/devices/ide_1_1 kded: MediaList::addMedium(@/org/freedesktop/Hal/devices/block_KNOPPIX) kded: MediaList emits mediumAdded(/org/freedesktop/Hal/devices/block_KNOPPIX, hdd) kded: MediaManager::slotMediumAdded: hdd kded: MediaDirNotify::toMediaURL(media:/) kded: MediaList::list() kded: KURL() kded: RemoteDirNotify::FilesAdded kded: RemoteDirNotify::toRemoteURL(media:/) kded: result => KURL() kio_media: MediaProtocol::listDir: media:/ kio_media: MediaImpl::listMedia kded: MediaList::list() kio_media: MediaProtocol::createMedium kio_media: url = media:/hda1, mime = media/hdd_unmounted kio_media: MediaProtocol::createMedium kio_media: url = media:/hdc3, mime = media/hdd_mounted kio (KIOJob): stat file:///mnt/data kio_file: FileProtocol::stat details=2 kio_media: MediaProtocol::createMedium kio_media: url = media:/hdd, mime = media/cdwriter_unmounted kded: MediaList::findByName(hdd) kio (KLauncher): KLauncher: Got start_service_by_desktop_path('/usr/kde/3.4/share/applications/kde/kfmclient_dir.desktop', ...) kdeinit: Got EXT_EXEC 'kfmclient' from launcher. Could not load library! Trying exec.... kio (KLauncher): kfmclient (pid 11380) up and running. kio (KSycoca): Trying to open ksycoca from /tmp/kdecache-troxx/ksycoca kio (KTrader): query for inode/directory, KParts/ReadOnlyPart : returning 8 offers kdeinit: Got SHELL 'konqueror' from socket. Could not load library! Trying exec.... kdeinit: PID 11382 terminated. Launched ok, pid = 11383 kdeinit: PID 11380 terminated. kio (KSycoca): Trying to open ksycoca from /tmp/kdecache-troxx/ksycoca kio (KTrader): query for KURIFilter/Plugin : returning 4 offers kio (KTrader): query for Browser/View : returning 19 offers kparts: MainWindow::createGUI, part=(nil) kio (KTrader): query for Browser/View, Application : returning 2 offers kio (KTrader): query for Browser/View, KParts/ReadOnlyPart : returning 19 offers kdeui (KDockWidget): : KDockWidget::setHeader kdeui (KDockWidget): KDockWidgetHeader::showUndockButton(true) kdeui (KDockWidget): KDockWidgetHeader::showUndockButton(false) kio (KTrader): query for inode/directory, Application : returning 0 offers kio (KTrader): query for inode/directory, KParts/ReadOnlyPart : returning 8 offers kparts: found KParts Plugin : /usr/kde/3.4/share/apps/konqiconview/kpartplugins/kremoteencodingplugin.rc kparts: found KParts Plugin : /usr/kde/3.4/share/apps/konqiconview/kpartplugins/kshellcmdplugin.rc kparts: load plugin kparts: load plugin kio (KTrader): query for ThumbCreator : returning 8 offers kio (KDirLister): +KDirLister kio (KDirListerCache): +KDirListerCache kio (KDirWatch): Available methods: Stat, FAM, DNotify kparts: 0x8102cd8 emitting activePartChanged 0x82a96a0 kparts: MainWindow::createGUI, part=0x82a96a0 KonqKfmIconView kio (KDirLister): [virtual bool KDirLister::openURL(const KURL&, bool, bool)] media:/hdd keep=false reload=false kio (KDirListerCache): [void KDirListerCache::listDir(KDirLister*, const KURL&, bool, bool)] 0x82e4d18 url=media:/hdd keep=false reload=false kio (KDirListerCache): [void KDirListerCache::stop(KDirLister*)] lister: 0x82e4d18 kio (KDirListerCache): [void KDirListerCache::forgetDirs(KDirLister*)] 0x82e4d18 kio (KTrader): query for ThumbCreator : returning 8 offers kio (KTrader): query for ThumbCreator : returning 8 offers kio (KDirListerCache): listDir: Entry not in cache or reloaded: media:/hdd konqueror: KMultiTabBarTab::updateState(): setting text to an empty QString*************** konqueror: KMultiTabBarTab::updateState(): setting text to an empty QString*************** konqueror: KMultiTabBarTab::updateState(): setting text to an empty QString*************** konqueror: KMultiTabBarTab::updateState(): setting text to an empty QString*************** konqueror: KMultiTabBarTab::updateState(): setting text to an empty QString*************** konqueror: KMultiTabBarTab::updateState(): setting text to an empty QString*************** kdeinit: Got EXEC_NEW 'kio_media' from launcher. kio (KLauncher): kio_media (pid 11384) up and running. kio (KSycoca): Trying to open ksycoca from /tmp/kdecache-troxx/ksycoca kio_media: MediaProtocol::listDir: media:/hdd kio_media: ForwardingSlaveBase::listDir: media:/hdd kded: MediaList::findByName(hdd) kio (KIOJob): kio_uiserver registered kdeinit: Got EXEC_NEW 'kio_file' from launcher. kio (KLauncher): kio_file (pid 11385) up and running. kio_file: Starting 11385 kio_file: MOUNTING fstype= dev=/dev/hdd point= ro=false sh: line 1: pmount: command not found kio_file: FileProtocol::mount _fstype= kio_file: /bin/mount '/dev/hdd' 2>/tmp/kde-troxx/kio_filepqK8Xa.tmp kio_file: mount got a warning: mount: block device /dev/hdd is write-protected, mounting read-only kio_file: kio_media: MediaImpl::slotMountResult I did some more research and found this: when the device is unmounted, it gets mounted by clicking it. nothing is displayed though (like I said above) and media:/ still shows a unmounted cdrecorder. if I restart hald (but leave kded running) media:/ gets updated and shows a mounted cdrecorder, clicking it works as expected. (maybe even without your patch, i'll check that later) now, when I unmount the device (through right-clicking menu), the device gets unmounted (according to mtab), but media:/ still shows it as mounted and lets me access it but errors out when I open folders that weren't cached. so... what I think is there's a problem between kded's hal-backend and hald. I'm gonna build hald with debug info to see if the problem is with hal or with kded's backend. I'll post results if I find them. I can't reproduce the new behavior you describe. I guess it's related to something in HAL. Please carefully check where to report the resulting bug. But, if you choose to report it against media:/ and not HAL, please open a new bugreport since it's clearly a different issue than the one described in the current bugreport. Before it crashed because of the message box... so now _this_ issue is really fixed. Regards. I found the problem, sorry for bugging here. I disabled DNotify in my kernel in favor of Inotify. Since FAM doesn't handle this, I installed gamin which is fam-compatible, which works well. But now it seems kde does not only use fam, but also talks to dnotify by itself(on gentoo), which caused the problem. I want to add that my kernel also missed dnotify support after adding it everything is running fine. Regards Ruben |