Summary: | crash during RAW import | ||
---|---|---|---|
Product: | [Applications] digikam | Reporter: | Gerhard Kulzer <gerhard> |
Component: | Plugin-DImg-RAW | Assignee: | Digikam Developers <digikam-bugs-null> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | caulier.gilles |
Priority: | NOR | ||
Version: | 0.10.0 | ||
Target Milestone: | --- | ||
Platform: | Ubuntu | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | 0.10.0 | |
Sentry Crash Report: |
Description
Gerhard Kulzer
2008-08-24 08:56:40 UTC
This is the problem : ASSERT failure in QVector<T>::operator[]: "index out of range", file /usr/include/qt4/QtCore/qvector.h, line 331 I have th e crash on my computer (KDE4/QT4), but a similar error in KDE3/QT3 without a crash (no Qt assertion) The problem is relevant of my code used with CurveWidget/ImageCurves/RawDecoding to host post processing curves settings from Raw import tool. It use a QPolygon (Qt4) and QPointArray (QT3) as container values. Something is wrong in this code, but i cannot find where exactly... Andi, Marcel, If you have an idea... Gilles SVN commit 851624 by cgilles: fix crash duing a wrong container size BUG: 169704 M +2 -2 imagecurves.cpp --- trunk/extragear/graphics/digikam/libs/curves/imagecurves.cpp #851623:851624 @@ -543,7 +543,7 @@ QPolygon ImageCurves::getCurvePoints(int channel) { - QPolygon array(17); + QPolygon array(18); if ( d->curves && channel>=0 && channel<5) @@ -613,7 +613,7 @@ { if ( d->curves && channel>=0 && channel<5 && - vals.size() == 17 ) + vals.size() == 18 ) { d->dirty = true; for (int j = 0 ; j <= 17 ; j++) SVN commit 851625 by cgilles: backport commit #851624 from KDE4 M +2 -2 imagecurves.cpp --- branches/extragear/kde3/graphics/digikam/libs/curves/imagecurves.cpp #851624:851625 @@ -543,7 +543,7 @@ QPointArray ImageCurves::getCurvePoints(int channel) { - QPointArray array(17); + QPointArray array(18); if ( d->curves && channel>=0 && channel<5) @@ -613,7 +613,7 @@ { if ( d->curves && channel>=0 && channel<5 && - vals.size() == 17 ) + vals.size() == 18 ) { d->dirty = true; for (int j = 0 ; j <= 17 ; j++) Oh the keywords are working again? Great!! Andi, No. I do it manually using web iface. Gilles |