[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-bugs-dist
Subject:    [Bug 295105] New: Gwenview crashes upon opening large JPEG file
From:       Kai Uwe Broulik <kde () privat ! broulik ! de>
Date:       2012-02-29 23:22:26
Message-ID: bug-295105-17878 () http ! bugs ! kde ! org/
[Download RAW message or body]

https://bugs.kde.org/show_bug.cgi?id=295105

           Summary: Gwenview crashes upon opening large JPEG file
           Product: gwenview
           Version: unspecified
          Platform: Ubuntu Packages
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: crash
          Priority: NOR
         Component: general
        AssignedTo: agateau@kde.org
        ReportedBy: kde@privat.broulik.de


Application: gwenview (2.8.0)
KDE Platform Version: 4.8.00 (4.8.0
Qt Version: 4.8.0
Operating System: Linux 3.2.0-17-generic x86_64
Distribution: Ubuntu precise (development branch)

-- Information about the crash:
Today I bought a digital camera (Sony Alpha55) and took some test shots with
it. I wanted to view them in Gwenview but Gwenview crashes on startup every
single time on every single photo.
They were taken in maximum resolution and quality (4912x2760 approx. 3,5MiB per
file) and I copied them over from the SD card to my computer prior to opening
them.

Gwenview opens, the picture is shown for a brief moment and then Gwenview
crashes. File prviews are generated properly and e.g. Kolourpaint opens the
picture. It does not matter whether I use OpenGL or Software or No animations
in Gwenview.

One of the pictures (isn't she cute? :D): http://privat.broulik.de/DSC00011.JPG

The crash can be reproduced every time.

-- Backtrace:
Application: Gwenview (gwenview), signal: Aborted
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fd781124780 (LWP 3305))]

Thread 5 (Thread 0x7fd76bbf5700 (LWP 3307)):
#0  0x00007fd77db08d93 in __GI___poll (fds=<optimized out>, nfds=<optimized
out>, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007fd77a2c0136 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fd77a2c0264 in g_main_context_iteration () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fd77ff79a76 in QEventDispatcherGlib::processEvents
(this=0x7fd7640008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#4  0x00007fd77ff492d2 in QEventLoop::processEvents (this=<optimized out>,
flags=...) at kernel/qeventloop.cpp:149
#5  0x00007fd77ff49527 in QEventLoop::exec (this=0x7fd76bbf4dd0, flags=...) at
kernel/qeventloop.cpp:204
#6  0x00007fd77fe48f97 in QThread::exec (this=<optimized out>) at
thread/qthread.cpp:501
#7  0x00007fd77ff2906f in QInotifyFileSystemWatcherEngine::run (this=0xfbd7c0)
at io/qfilesystemwatcher_inotify.cpp:248
#8  0x00007fd77fe4bfbb in QThreadPrivate::start (arg=0xfbd7c0) at
thread/qthread_unix.cpp:298
#9  0x00007fd77a97fe9a in start_thread (arg=0x7fd76bbf5700) at
pthread_create.c:308
#10 0x00007fd77db1474d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7fd763fff700 (LWP 3308)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at
../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007fd76acb1e73 in ?? () from /usr/lib/x86_64-linux-gnu/dri/r600_dri.so
#2  0x00007fd77a97fe9a in start_thread (arg=0x7fd763fff700) at
pthread_create.c:308
#3  0x00007fd77db1474d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#4  0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7fd7637fe700 (LWP 3309)):
#0  0x00007fd77a2914e0 in pthread_mutex_unlock@plt () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007fd77a2fb431 in g_mutex_unlock () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fd77a2c012a in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fd77a2c0264 in g_main_context_iteration () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007fd77ff79a76 in QEventDispatcherGlib::processEvents
(this=0x7fd75c0008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#5  0x00007fd77ff492d2 in QEventLoop::processEvents (this=<optimized out>,
flags=...) at kernel/qeventloop.cpp:149
#6  0x00007fd77ff49527 in QEventLoop::exec (this=0x7fd7637fddd0, flags=...) at
kernel/qeventloop.cpp:204
#7  0x00007fd77fe48f97 in QThread::exec (this=<optimized out>) at
thread/qthread.cpp:501
#8  0x00007fd77ff2906f in QInotifyFileSystemWatcherEngine::run (this=0x156f8d0)
at io/qfilesystemwatcher_inotify.cpp:248
#9  0x00007fd77fe4bfbb in QThreadPrivate::start (arg=0x156f8d0) at
thread/qthread_unix.cpp:298
#10 0x00007fd77a97fe9a in start_thread (arg=0x7fd7637fe700) at
pthread_create.c:308
#11 0x00007fd77db1474d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#12 0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7fd7625f0700 (LWP 3312)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at
../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:215
#1  0x00007fd77fe4c42f in wait (time=30000, this=0x17b04f0) at
thread/qwaitcondition_unix.cpp:84
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x17b0498, time=30000) at
thread/qwaitcondition_unix.cpp:158
#3  0x00007fd77fe3f5af in QThreadPoolThread::run (this=0x17a5890) at
concurrent/qthreadpool.cpp:141
#4  0x00007fd77fe4bfbb in QThreadPrivate::start (arg=0x17a5890) at
thread/qthread_unix.cpp:298
#5  0x00007fd77a97fe9a in start_thread (arg=0x7fd7625f0700) at
pthread_create.c:308
#6  0x00007fd77db1474d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7fd781124780 (LWP 3305)):
[KCrash Handler]
#6  0x00007fd77da5a445 in __GI_raise (sig=<optimized out>) at
../nptl/sysdeps/unix/sysv/linux/raise.c:64
#7  0x00007fd77da5dbab in __GI_abort () at abort.c:91
#8  0x00007fd77da5310e in __assert_fail_base (fmt=<optimized out>,
assertion=0x7fd77cbaabb5 "p >= pData_", file=0x7fd77cbaa9e8 "tiffvisitor.cpp",
line=<optimized out>, function=<optimized out>) at assert.c:94
#9  0x00007fd77da531b2 in __GI___assert_fail (assertion=0x7fd77cbaabb5 "p >=
pData_", file=0x7fd77cbaa9e8 "tiffvisitor.cpp", line=1261,
function=0x7fd77cbabc20 "virtual void
Exiv2::Internal::TiffReader::visitDirectory(Exiv2::Internal::TiffDirectory*)")
at assert.c:103
#10 0x00007fd77cb1beac in ?? () from /usr/lib/libexiv2.so.11
#11 0x00007fd77cb03bb6 in ?? () from /usr/lib/libexiv2.so.11
#12 0x00007fd77cb03a54 in ?? () from /usr/lib/libexiv2.so.11
#13 0x00007fd77cb03a89 in ?? () from /usr/lib/libexiv2.so.11
#14 0x00007fd77cb03be7 in ?? () from /usr/lib/libexiv2.so.11
#15 0x00007fd77cb03b0e in ?? () from /usr/lib/libexiv2.so.11
#16 0x00007fd77cb03be7 in ?? () from /usr/lib/libexiv2.so.11
#17 0x00007fd77cb0c720 in ?? () from /usr/lib/libexiv2.so.11
#18 0x00007fd77cb0c7f7 in ?? () from /usr/lib/libexiv2.so.11
#19 0x00007fd77cb0c973 in Exiv2::TiffParser::decode(Exiv2::ExifData&,
Exiv2::IptcData&, Exiv2::XmpData&, unsigned char const*, unsigned int) () from
/usr/lib/libexiv2.so.11
#20 0x00007fd77caa7914 in Exiv2::ExifParser::decode(Exiv2::ExifData&, unsigned
char const*, unsigned int) () from /usr/lib/libexiv2.so.11
#21 0x00007fd77cabbb44 in Exiv2::JpegBase::readMetadata() () from
/usr/lib/libexiv2.so.11
#22 0x00007fd759b50bd8 in JpegEndAnalyzer::analyze (this=0x2273eb0, ar=...,
in=0x23abb10) at
/build/buildd/strigi-0.7.7/libstreamanalyzer/plugins/endplugins/jpegendanalyzer.cpp:250
#23 0x00007fd77b6c41ea in Strigi::StreamAnalyzerPrivate::analyze
(this=0x238dee0, idx=..., input=0x23abb10) at
/build/buildd/strigi-0.7.7/libstreamanalyzer/lib/streamanalyzer.cpp:418
#24 0x00007fd78061d0cf in KFileMetaInfoPrivate::init (this=0x21dbd20,
stream=..., url=..., mtime=1330551780, w=...) at
../../kio/kio/kfilemetainfo.cpp:259
#25 0x00007fd78061de26 in KFileMetaInfo::KFileMetaInfo (this=0x7fffb6f66270,
path=..., w=...) at ../../kio/kio/kfilemetainfo.cpp:288
#26 0x00007fd780605cd5 in KFileItem::metaInfo (this=0x7fffb6f66390,
autoget=true, what=12) at ../../kio/kio/kfileitem.cpp:1309
#27 0x00007fd780a5a5c5 in update (fileItem=..., this=0x237d960) at
../../lib/timeutils.cpp:53
#28 Gwenview::TimeUtils::dateTimeForFileItem (fileItem=...) at
../../lib/timeutils.cpp:79
#29 0x00007fd780a360ec in Gwenview::SortedDirModel::lessThan (this=0xf185e0,
left=..., right=...) at ../../lib/semanticinfo/sorteddirmodel.cpp:274
#30 0x00007fd77ed3373e in operator() (r2=29, r1=<optimized out>,
this=0x7fffb6f664c0) at itemviews/qsortfilterproxymodel.cpp:80
#31 qUpperBoundHelper<int*, int, QSortFilterProxyModelLessThan>
(lessThan=<error reading variable: access outside bounds of object referenced
via synthetic pointer>, value=@0x219d66c: 31, end=0x219d668, begin=0x219d664)
at ../../include/QtCore/../../src/corelib/tools/qalgorithms.h:499
#32 qUpperBound<int*, int, QSortFilterProxyModelLessThan> (lessThan=...,
value=@0x219d66c: 31, end=0x219d668, begin=0x219d664) at
../../include/QtCore/../../src/corelib/tools/qalgorithms.h:285
#33 QAlgorithmsPrivate::qMerge<int*, int const, QSortFilterProxyModelLessThan>
(begin=0x219d664, pivot=0x219d668, end=0x219d670, t=@0x219d5f0: 18,
lessThan=...) at ../../include/QtCore/../../src/corelib/tools/qalgorithms.h:440
#34 0x00007fd77ed33942 in QAlgorithmsPrivate::qStableSortHelper<int*, int,
QSortFilterProxyModelLessThan> (begin=0x219d664, end=0x219d670, t=@0x219d5f0:
18, lessThan=...) at
../../include/QtCore/../../src/corelib/tools/qalgorithms.h:459
#35 0x00007fd77ed338d9 in QAlgorithmsPrivate::qStableSortHelper<int*, int,
QSortFilterProxyModelLessThan> (begin=0x219d658, end=0x219d670, t=@0x219d5f0:
18, lessThan=...) at
../../include/QtCore/../../src/corelib/tools/qalgorithms.h:458
#36 0x00007fd77ed33879 in QAlgorithmsPrivate::qStableSortHelper<int*, int,
QSortFilterProxyModelLessThan> (begin=0x219d658, end=0x219d68c, t=@0x219d5f0:
18, lessThan=...) at
../../include/QtCore/../../src/corelib/tools/qalgorithms.h:457
#37 0x00007fd77ed33879 in QAlgorithmsPrivate::qStableSortHelper<int*, int,
QSortFilterProxyModelLessThan> (begin=0x219d658, end=0x219d6c0, t=@0x219d5f0:
18, lessThan=...) at
../../include/QtCore/../../src/corelib/tools/qalgorithms.h:457
#38 0x00007fd77ed338d9 in QAlgorithmsPrivate::qStableSortHelper<int*, int,
QSortFilterProxyModelLessThan> (begin=0x219d5f0, end=0x219d6c0, t=@0x219d5f0:
18, lessThan=...) at
../../include/QtCore/../../src/corelib/tools/qalgorithms.h:458
#39 0x00007fd77ed33879 in QAlgorithmsPrivate::qStableSortHelper<int*, int,
QSortFilterProxyModelLessThan> (begin=0x219d5f0, end=0x219d790, t=@0x219d5f0:
18, lessThan=...) at
../../include/QtCore/../../src/corelib/tools/qalgorithms.h:457
#40 0x00007fd77ed2c8fb in qStableSort<int*, QSortFilterProxyModelLessThan>
(lessThan=..., end=<optimized out>, start=<optimized out>) at
../../include/QtCore/../../src/corelib/tools/qalgorithms.h:212
#41 QSortFilterProxyModelPrivate::sort_source_rows (this=<optimized out>,
source_rows=..., source_parent=...) at itemviews/qsortfilterproxymodel.cpp:466
#42 0x00007fd77ed2e9a1 in QSortFilterProxyModelPrivate::sort (this=0xf173e0) at
itemviews/qsortfilterproxymodel.cpp:431
#43 0x00007fd77ff5e8d1 in QMetaObject::activate (sender=0xf1eeb0, m=<optimized
out>, local_signal_index=<optimized out>, argv=0x7fffb6f66c40) at
kernel/qobject.cpp:3547
#44 0x00007fd77ffaaad4 in QAbstractItemModel::rowsInserted (this=<optimized
out>, _t1=..., _t2=0, _t3=103) at
.moc/release-shared/moc_qabstractitemmodel.cpp:197
#45 0x00007fd77ff4467d in QAbstractItemModel::endInsertRows (this=0xf1eeb0) at
kernel/qabstractitemmodel.cpp:2433
#46 0x00007fd7805fae95 in KDirModelPrivate::_k_slotNewItems (this=0xf19d40,
directoryUrl=..., items=...) at ../../kio/kio/kdirmodel.cpp:441
#47 0x00007fd77ff5e8d1 in QMetaObject::activate (sender=0xf17760, m=<optimized
out>, local_signal_index=<optimized out>, argv=0x7fffb6f671e0) at
kernel/qobject.cpp:3547
#48 0x00007fd7805e1d4a in KDirLister::itemsAdded (this=<optimized out>,
_t1=..., _t2=...) at ./kdirlister.moc:288
#49 0x00007fd7805e2271 in KDirLister::Private::emitItems (this=0xf19a40) at
../../kio/kio/kdirlister.cpp:2478
#50 0x00007fd7805e7926 in KDirListerCache::slotEntries (this=0xf21dd0,
job=<optimized out>, entries=...) at ../../kio/kio/kdirlister.cpp:1233
#51 0x00007fd77ff5e8d1 in QMetaObject::activate (sender=0x191c7d0, m=<optimized
out>, local_signal_index=<optimized out>, argv=0x7fffb6f67620) at
kernel/qobject.cpp:3547
#52 0x00007fd7805cb6d4 in KIO::ListJob::entries (this=<optimized out>,
_t1=0x191c7d0, _t2=...) at ./jobclasses.moc:965
#53 0x00007fd7805d09ab in KIO::ListJobPrivate::slotListEntries (this=0x1bcc8f0,
list=...) at ../../kio/kio/job.cpp:2580
#54 0x00007fd77ff5e8d1 in QMetaObject::activate (sender=0x18fad30, m=<optimized
out>, local_signal_index=<optimized out>, argv=0x7fffb6f67910) at
kernel/qobject.cpp:3547
#55 0x00007fd780671f85 in KIO::SlaveInterface::listEntries (this=<optimized
out>, _t1=...) at ./slaveinterface.moc:199
#56 0x00007fd7806751c8 in KIO::SlaveInterface::dispatch (this=0x18fad30,
_cmd=<optimized out>, rawdata=...) at ../../kio/kio/slaveinterface.cpp:190
#57 0x00007fd780671765 in KIO::SlaveInterface::dispatch (this=<optimized out>)
at ../../kio/kio/slaveinterface.cpp:88
#58 0x00007fd7806649ee in KIO::Slave::gotInput (this=0x18fad30) at
../../kio/kio/slave.cpp:344
#59 0x00007fd77ff5e8d1 in QMetaObject::activate (sender=0x19aef80, m=<optimized
out>, local_signal_index=<optimized out>, argv=0x0) at kernel/qobject.cpp:3547
#60 0x00007fd780597887 in dequeue (this=<optimized out>) at
../../kio/kio/connection.cpp:82
#61 KIO::ConnectionPrivate::dequeue (this=0x1986fd0) at
../../kio/kio/connection.cpp:71
#62 0x00007fd77ff63a96 in QObject::event (this=0x19aef80, e=<optimized out>) at
kernel/qobject.cpp:1195
#63 0x00007fd77e77c6b4 in notify_helper (e=0x1bcece0, receiver=0x19aef80,
this=0xdead30) at kernel/qapplication.cpp:4555
#64 QApplicationPrivate::notify_helper (this=0xdead30, receiver=0x19aef80,
e=0x1bcece0) at kernel/qapplication.cpp:4527
#65 0x00007fd77e781533 in QApplication::notify (this=0x7fffb6f68750,
receiver=0x19aef80, e=0x1bcece0) at kernel/qapplication.cpp:4416
#66 0x00007fd77f4b4a66 in KApplication::notify (this=0x7fffb6f68750,
receiver=0x19aef80, event=0x1bcece0) at ../../kdeui/kernel/kapplication.cpp:311
#67 0x00007fd77ff4a4ec in QCoreApplication::notifyInternal
(this=0x7fffb6f68750, receiver=0x19aef80, event=0x1bcece0) at
kernel/qcoreapplication.cpp:876
#68 0x00007fd77ff4e2ba in sendEvent (event=0x1bcece0, receiver=0x19aef80) at
../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#69 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0,
data=0xdbd2b0) at kernel/qcoreapplication.cpp:1500
#70 0x00007fd77ff795e3 in sendPostedEvents () at
../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:236
#71 postEventSourceDispatch (s=<optimized out>) at
kernel/qeventdispatcher_glib.cpp:279
#72 0x00007fd77a2bfdda in g_main_context_dispatch () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#73 0x00007fd77a2c01a0 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#74 0x00007fd77a2c0264 in g_main_context_iteration () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#75 0x00007fd77ff79a0f in QEventDispatcherGlib::processEvents (this=0xdbe770,
flags=...) at kernel/qeventdispatcher_glib.cpp:424
#76 0x00007fd77e824a9e in QGuiEventDispatcherGlib::processEvents
(this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#77 0x00007fd77ff492d2 in QEventLoop::processEvents (this=<optimized out>,
flags=...) at kernel/qeventloop.cpp:149
#78 0x00007fd77ff49527 in QEventLoop::exec (this=0x7fffb6f686b0, flags=...) at
kernel/qeventloop.cpp:204
#79 0x00007fd77ff4e5b7 in QCoreApplication::exec () at
kernel/qcoreapplication.cpp:1148
#80 0x0000000000426935 in main (argc=6, argv=0x7fffb6f68a78) at
../../app/main.cpp:142

Possible duplicates by query: bug 289949.

Reported using DrKonqi

-- 
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic