Re: K3b 1.0.1 eject problem

Sebastian Trüg <[email protected]>
Newsgroups gmane.comp.kde.k3b
Message-ID <[email protected]>
Nice work again.

On Saturday 23 June 2007 21:35:39 [email protected] wrote:
> With the patch (k3b-thread.diff), that you sent,
>
> I get the following K3b output (with DVD+RW Video, ejects):
>  ................................
> (K3bDevice::Device) ***ooo_x12_in   ::eject() const
> (K3bDevice::Device) ***ooo_x12a  Q_OS_LINUX
> (K3bDevice::ScsiCommand) ***ooo_x14e           <-- !!!

do we have a "(K3bDevice::ScsiCommand) ***ooo_x14a" somewhere before this?

> Explanation:
> (in "k3bscsicommand_linux.cpp" I added):
>
> bool needToClose = false;
>   if( m_device ) {
>       k3bDebug() << "(K3bDevice::ScsiCommand) ***ooo_x14a  " << endl;
>       m_device->usageLock();
>       k3bDebug() << "(K3bDevice::ScsiCommand) ***ooo_x14b  " << endl;
>       if( !m_device->isOpen() ) {
>           needToClose = true;
>       }
>       if ( !m_device->open( dir == TR_DIR_WRITE ) ) {
>           k3bDebug() << "(K3bDevice::ScsiCommand) ***ooo_x14c  " << endl;
>           m_device->usageUnlock();
>           k3bDebug() << "(K3bDevice::ScsiCommand) ***ooo_x14d  " << endl;
>           return -1;
>       }
>
> if ( m_device ) {
>       k3bDebug() << "(K3bDevice::ScsiCommand) ***ooo_x14e  " << endl;
>       m_device->usageUnlock();
>       k3bDebug() << "(K3bDevice::ScsiCommand) ***ooo_x14f  " << endl;
>   }
>
> (in "k3bdevice.cpp" I added into "::eject() const"):
>
> #elif defined(Q_OS_LINUX)
>
>     k3bDebug() << "(K3bDevice::Device) ***ooo_x12a " << " Q_OS_LINUX " <<
> endl;
>
>     bool success = false;
>     bool needToClose = !isOpen();
>
>     usageLock();
>
>     k3bDebug() << "(K3bDevice::Device) ***ooo_x12b " << endl;
>
>
> The K3b output (with DVD+R Video, doesn't eject) is:
>
>  ................................
> (K3bDevice::Device) ***ooo_x12_in   ::eject() const
> (K3bDevice::Device) ***ooo_x12a  Q_OS_LINUX
>
>
> Conclusion:
> With (DVD+R) K3b doesn't reach "ooo_x14e" to
> execute "m_device->usageUnlock()", so "usageLock()" in
> "::eject() const" cannot be executed.
>
> The K3b outputs I attach below.



-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.