Bug 177923 - Gwenview part freezes Konqueror on image load [testcase]
Summary: Gwenview part freezes Konqueror on image load [testcase]
Status: CLOSED FIXED
Alias: None
Product: gwenview
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Unspecified
: NOR normal
Target Milestone: ---
Assignee: Gwenview Bugs
URL:
Keywords:
: 178406 (view as bug list)
Depends on:
Blocks:
 
Reported: 2008-12-16 20:41 UTC by David Palacio
Modified: 2012-10-19 13:26 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description David Palacio 2008-12-16 20:41:53 UTC
Version:            (using Devel)
Installed from:    Compiled sources

When loading a relatively big image on a slow connection (i.e. internet) using the Gwenview part, Konqueror freezes most of the load time. The progress dialog/Notification plasmoid become unresponsive too.

Testcase:
1. Open http://commons.wikimedia.org/wiki/File:ERA-spatio_hires.jpg
2. Open the full resolution image
=>UI freeze

During the freeze I got these 2 backtraces at two different times:

#0  0x00007f1fa8252ce2 in select () from /lib/libc.so.6                                                                                                            
#1  0x00007f1fa5ea8323 in QEventDispatcherUNIX::select (this=<value optimized out>, nfds=56, readfds=0x66a720, writefds=0x66a9b8, exceptfds=0x66ac50,              
    timeout=0x7fffb09ea410) at kernel/qeventdispatcher_unix.cpp:595                                                                                                
#2  0x00007f1fa5ea8c8d in QEventDispatcherUNIXPrivate::doSelect (this=0x66a570, flags={i = -1331780576}, timeout=0x7fffb09ea410)                                   
    at kernel/qeventdispatcher_unix.cpp:166                                                                                                                        
#3  0x00007f1fa5eaa49d in QEventDispatcherUNIX::processEvents (this=0x669ad0, flags={i = -1331779616}) at kernel/qeventdispatcher_unix.cpp:889                     
#4  0x00007f1fa54353e2 in QEventDispatcherX11::processEvents (this=0x669ad0, flags={i = -1331779536}) at kernel/qeventdispatcher_x11.cpp:148                       
#5  0x00007f1fa5e7f449 in QCoreApplication::processEvents (flags={i = -1331779456}) at kernel/qcoreapplication.cpp:771                                             
#6  0x00007f1f9325afe8 in Gwenview::DocumentView::openUrl () from /usr/lib/libgwenviewlib.so.4                                                                     
#7  0x00007f1f934ccfd3 in ?? () from /usr/lib/kde4/gvpart.so                                                                                                       
#8  0x00007f1fa852858e in KonqView::openUrl (this=0x115b540, url=@0x7fffb09eaee0, locationBarURL=@0x7fffb09eb060, nameFilter=@0x179e920, tempFile=false)           
    at ../../../../apps/konqueror/src/konqview.cpp:231                                                                                                             
#9  0x00007f1fa8576c69 in KonqMainWindow::openView (this=0x769ce0, mimeType={d = 0x7fffb09eb130}, _url=<value optimized out>, childView=0x115b540, req=@0x179e918) 
    at ../../../../apps/konqueror/src/konqmainwindow.cpp:935                                                                                                       
#10 0x00007f1fa851c7e6 in KonqRun::tryOpenView (this=0x179e8e0, mimeType=@0x7fffb09eb1e0, associatedAppIsKonqueror=<value optimized out>)                          
    at ../../../../apps/konqueror/src/konqrun.cpp:158                                                                                                              
#11 0x00007f1fa851c9b1 in KonqRun::foundMimeType (this=0x179e8e0, _type=<value optimized out>) at ../../../../apps/konqueror/src/konqrun.cpp:93                    
#12 0x00007f1fa722202a in KRun::mimeTypeDetermined (this=0x179e8e0, mimeType=@0x7fffb09eb2b0) at ../../kio/kio/krun.cpp:1125                                       
#13 0x00007f1fa7b2dc87 in KParts::BrowserRun::slotBrowserMimetype (this=0x179e8e0, _job=<value optimized out>, type=@0x7fffb09eb810)                               
    at ../../kparts/browserrun.cpp:222                                                                                                                             
#14 0x00007f1fa7b2e0bd in KParts::BrowserRun::qt_metacall (this=0x179e8e0, _c=QMetaObject::InvokeMetaMethod, _id=1, _a=0x7fffb09eb4b0) at ./browserrun.moc:73      
#15 0x00007f1fa851dbc6 in KonqRun::qt_metacall (this=0x38, _c=6727456, _id=6728120, _a=0xffffffffffffffff) at ./konqrun.moc:62                                     
#16 0x00007f1fa5e926d4 in QMetaObject::activate (sender=0x2669df0, from_signal_index=<value optimized out>, to_signal_index=44, argv=0xffffffffffffffff)           
    at kernel/qobject.cpp:3031                                                                                                                                     
#17 0x00007f1fa71a8007 in KIO::TransferJob::mimetype (this=0x38, _t1=0x2669df0, _t2=<value optimized out>) at ./jobclasses.moc:384                                 
#18 0x00007f1fa71ae0d1 in KIO::TransferJob::qt_metacall (this=0x2669df0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fffb09eb5e0)           
    at ./jobclasses.moc:339                                                                                                                                        
#19 0x00007f1fa5e926d4 in QMetaObject::activate (sender=0x2209670, from_signal_index=<value optimized out>, to_signal_index=23, argv=0xffffffffffffffff)           
    at kernel/qobject.cpp:3031                                                                                                                                     
#20 0x00007f1fa726ce35 in KIO::SlaveInterface::mimeType (this=0x38, _t1=<value optimized out>) at ./slaveinterface.moc:265                                         
#21 0x00007f1fa7270470 in KIO::SlaveInterface::dispatch (this=0x2209670, _cmd=21, rawdata=<value optimized out>) at ../../kio/kio/slaveinterface.cpp:270           
#22 0x00007f1fa726d4a2 in KIO::SlaveInterface::dispatch (this=0x2209670) at ../../kio/kio/slaveinterface.cpp:91                                                    
#23 0x00007f1fa725f6a3 in KIO::Slave::gotInput (this=0x2209670) at ../../kio/kio/slave.cpp:322                                                                     
#24 0x00007f1fa72606d8 in KIO::Slave::qt_metacall (this=0x2209670, _c=QMetaObject::InvokeMetaMethod, _id=-514, _a=0x7fffb09eb9d0) at ./slave.moc:75                
---Type <return> to continue, or q <return> to quit---c                                                                                                            
#25 0x00007f1fa5e926d4 in QMetaObject::activate (sender=0x220e4e0, from_signal_index=<value optimized out>, to_signal_index=4, argv=0xffffffffffffffff)            
    at kernel/qobject.cpp:3031                                                                                                                                     
#26 0x00007f1fa717c2e0 in KIO::ConnectionPrivate::dequeue (this=0x220e6a0) at ../../kio/kio/connection.cpp:82                                                      
#27 0x00007f1fa717c41a in KIO::Connection::qt_metacall (this=0x220e4e0, _c=QMetaObject::InvokeMetaMethod, _id=-514, _a=0x22d47d0) at ./connection.moc:72           
#28 0x00007f1fa5e8d345 in QObject::event (this=0x220e4e0, e=0x3c4adb0) at kernel/qobject.cpp:1155                                                                  
#29 0x00007f1fa53a2a5d in QApplicationPrivate::notify_helper (this=0x66a300, receiver=0x220e4e0, e=0x3c4adb0) at kernel/qapplication.cpp:3803                      
#30 0x00007f1fa53aa7da in QApplication::notify (this=0x7fffb09ec860, receiver=0x220e4e0, e=0x3c4adb0) at kernel/qapplication.cpp:3768                              
#31 0x00007f1fa6a79b8b in KApplication::notify (this=0x7fffb09ec860, receiver=0x220e4e0, event=0x3c4adb0) at ../../kdeui/kernel/kapplication.cpp:307               
#32 0x00007f1fa5e7e381 in QCoreApplication::notifyInternal (this=0x7fffb09ec860, receiver=0x220e4e0, event=0x3c4adb0) at kernel/qcoreapplication.cpp:587           
#33 0x00007f1fa5e7f01a in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x652740)                                                    
    at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:209                                                                                        
#34 0x00007f1fa5eaa430 in QEventDispatcherUNIX::processEvents (this=0x669ad0, flags={i = -1331772112}) at kernel/qeventdispatcher_unix.cpp:861                     
#35 0x00007f1fa54353e2 in QEventDispatcherX11::processEvents (this=0x669ad0, flags={i = -1331772032}) at kernel/qeventdispatcher_x11.cpp:148                       
#36 0x00007f1fa5e7cca2 in QEventLoop::processEvents (this=<value optimized out>, flags={i = -1331771984}) at kernel/qeventloop.cpp:143                             
#37 0x00007f1fa5e7ce2d in QEventLoop::exec (this=0x7fffb09ec5f0, flags={i = -1331771904}) at kernel/qeventloop.cpp:194                                             
#38 0x00007f1fa5e7f2dd in QCoreApplication::exec () at kernel/qcoreapplication.cpp:845                                                                             
#39 0x00007f1fa85a7df9 in kdemain (argc=<value optimized out>, argv=<value optimized out>) at ../../../../apps/konqueror/src/konqmain.cpp:257                      
#40 0x00007f1fa81a81a6 in __libc_start_main () from /lib/libc.so.6                                                                                                 
#41 0x0000000000400629 in _start ()                                                                                                                                







#0  QEventDispatcherX11::processEvents (this=0x669ad0, flags={i = -1331779536}) at kernel/qeventdispatcher_x11.cpp:151                                             
#1  0x00007f1fa5e7f449 in QCoreApplication::processEvents (flags={i = -1331779456}) at kernel/qcoreapplication.cpp:771                                             
#2  0x00007f1f9325afe8 in Gwenview::DocumentView::openUrl () from /usr/lib/libgwenviewlib.so.4                                                                     
#3  0x00007f1f934ccfd3 in ?? () from /usr/lib/kde4/gvpart.so                                                                                                       
#4  0x00007f1fa852858e in KonqView::openUrl (this=0x115b540, url=@0x7fffb09eaee0, locationBarURL=@0x7fffb09eb060, nameFilter=@0x179e920, tempFile=false)           
    at ../../../../apps/konqueror/src/konqview.cpp:231                                                                                                             
#5  0x00007f1fa8576c69 in KonqMainWindow::openView (this=0x769ce0, mimeType={d = 0x7fffb09eb130}, _url=<value optimized out>, childView=0x115b540, req=@0x179e918) 
    at ../../../../apps/konqueror/src/konqmainwindow.cpp:935                                                                                                       
#6  0x00007f1fa851c7e6 in KonqRun::tryOpenView (this=0x179e8e0, mimeType=@0x7fffb09eb1e0, associatedAppIsKonqueror=<value optimized out>)                          
    at ../../../../apps/konqueror/src/konqrun.cpp:158                                                                                                              
#7  0x00007f1fa851c9b1 in KonqRun::foundMimeType (this=0x179e8e0, _type=<value optimized out>) at ../../../../apps/konqueror/src/konqrun.cpp:93                    
#8  0x00007f1fa722202a in KRun::mimeTypeDetermined (this=0x179e8e0, mimeType=@0x7fffb09eb2b0) at ../../kio/kio/krun.cpp:1125                                       
#9  0x00007f1fa7b2dc87 in KParts::BrowserRun::slotBrowserMimetype (this=0x179e8e0, _job=<value optimized out>, type=@0x7fffb09eb810)                               
    at ../../kparts/browserrun.cpp:222                                                                                                                             
#10 0x00007f1fa7b2e0bd in KParts::BrowserRun::qt_metacall (this=0x179e8e0, _c=QMetaObject::InvokeMetaMethod, _id=1, _a=0x7fffb09eb4b0) at ./browserrun.moc:73      
#11 0x00007f1fa851dbc6 in KonqRun::qt_metacall (this=0x66add0, _c=2963186416, _id=0, _a=0x0) at ./konqrun.moc:62                                                   
#12 0x00007f1fa5e926d4 in QMetaObject::activate (sender=0x2669df0, from_signal_index=<value optimized out>, to_signal_index=44, argv=0x0) at kernel/qobject.cpp:3031
#13 0x00007f1fa71a8007 in KIO::TransferJob::mimetype (this=0x66add0, _t1=0x2669df0, _t2=<value optimized out>) at ./jobclasses.moc:384                              
#14 0x00007f1fa71ae0d1 in KIO::TransferJob::qt_metacall (this=0x2669df0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fffb09eb5e0)            
    at ./jobclasses.moc:339                                                                                                                                         
#15 0x00007f1fa5e926d4 in QMetaObject::activate (sender=0x2209670, from_signal_index=<value optimized out>, to_signal_index=23, argv=0x0) at kernel/qobject.cpp:3031
#16 0x00007f1fa726ce35 in KIO::SlaveInterface::mimeType (this=0x66add0, _t1=<value optimized out>) at ./slaveinterface.moc:265                                      
#17 0x00007f1fa7270470 in KIO::SlaveInterface::dispatch (this=0x2209670, _cmd=21, rawdata=<value optimized out>) at ../../kio/kio/slaveinterface.cpp:270            
#18 0x00007f1fa726d4a2 in KIO::SlaveInterface::dispatch (this=0x2209670) at ../../kio/kio/slaveinterface.cpp:91                                                     
#19 0x00007f1fa725f6a3 in KIO::Slave::gotInput (this=0x2209670) at ../../kio/kio/slave.cpp:322                                                                      
#20 0x00007f1fa72606d8 in KIO::Slave::qt_metacall (this=0x2209670, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x7fffb09eb9d0) at ./slave.moc:75                    
#21 0x00007f1fa5e926d4 in QMetaObject::activate (sender=0x220e4e0, from_signal_index=<value optimized out>, to_signal_index=4, argv=0x0) at kernel/qobject.cpp:3031 
#22 0x00007f1fa717c2e0 in KIO::ConnectionPrivate::dequeue (this=0x220e6a0) at ../../kio/kio/connection.cpp:82                                                       
#23 0x00007f1fa717c41a in KIO::Connection::qt_metacall (this=0x220e4e0, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x22d47d0) at ./connection.moc:72               
#24 0x00007f1fa5e8d345 in QObject::event (this=0x220e4e0, e=0x3c4adb0) at kernel/qobject.cpp:1155                                                                   
#25 0x00007f1fa53a2a5d in QApplicationPrivate::notify_helper (this=0x66a300, receiver=0x220e4e0, e=0x3c4adb0) at kernel/qapplication.cpp:3803                       
#26 0x00007f1fa53aa7da in QApplication::notify (this=0x7fffb09ec860, receiver=0x220e4e0, e=0x3c4adb0) at kernel/qapplication.cpp:3768                               
#27 0x00007f1fa6a79b8b in KApplication::notify (this=0x7fffb09ec860, receiver=0x220e4e0, event=0x3c4adb0) at ../../kdeui/kernel/kapplication.cpp:307                
#28 0x00007f1fa5e7e381 in QCoreApplication::notifyInternal (this=0x7fffb09ec860, receiver=0x220e4e0, event=0x3c4adb0) at kernel/qcoreapplication.cpp:587            
---Type <return> to continue, or q <return> to quit---                                                                                                              
#29 0x00007f1fa5e7f01a in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x652740)                                                     
    at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:209                                                                                         
#30 0x00007f1fa5eaa430 in QEventDispatcherUNIX::processEvents (this=0x669ad0, flags={i = -1331772112}) at kernel/qeventdispatcher_unix.cpp:861                      
#31 0x00007f1fa54353e2 in QEventDispatcherX11::processEvents (this=0x669ad0, flags={i = -1331772032}) at kernel/qeventdispatcher_x11.cpp:148                        
#32 0x00007f1fa5e7cca2 in QEventLoop::processEvents (this=<value optimized out>, flags={i = -1331771984}) at kernel/qeventloop.cpp:143                              
#33 0x00007f1fa5e7ce2d in QEventLoop::exec (this=0x7fffb09ec5f0, flags={i = -1331771904}) at kernel/qeventloop.cpp:194                                              
#34 0x00007f1fa5e7f2dd in QCoreApplication::exec () at kernel/qcoreapplication.cpp:845                                                                              
#35 0x00007f1fa85a7df9 in kdemain (argc=<value optimized out>, argv=<value optimized out>) at ../../../../apps/konqueror/src/konqmain.cpp:257                       
#36 0x00007f1fa81a81a6 in __libc_start_main () from /lib/libc.so.6                                                                                                  
#37 0x0000000000400629 in _start ()                                                                                                                                 




As you can see, it never leaves Gwenview::DocumentView::openUrl() the whole time.
Comment 1 Aurelien Gateau 2008-12-21 23:24:32 UTC
SVN commit 899944 by gateau:

Avoid blocking ui while waiting for the document kind to be determined.
BUG:177923


 M  +18 -2     documentview.cpp  
 M  +1 -0      documentview.h  


WebSVN link: http://websvn.kde.org/?view=rev&revision=899944
Comment 2 Aurelien Gateau 2008-12-22 22:56:35 UTC
*** Bug 178406 has been marked as a duplicate of this bug. ***