View Issue Details

IDProjectCategoryView StatusLast Update
0011146ScribusColor Managementpublic2013-10-30 21:39
Reporterkai Assigned Tofschmid  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Platformx86OSLinuxOS VersionArch
Product Version1.5.0svn 
Target Version1.5.0Fixed in Version1.5.0svn 
Summary0011146: Crash (or hang) on changing color settings of older document
DescriptionWhen I try to change the color management settings of an older document (created with an older version of Scribus), the program either crashes or hangs indefinitely, as soon as I try to apply the change.
Reproducable, well, almost always...
Steps To Reproduce- Load attached file
- Go to color settings in file settings
- Change something (e.g. printer color profile or completely deactivate color management)
- Click OK
(- Sometimes 'Apply' also leads to a crash, but the last times I tried Apply just had no effect at all - it neither worked nor led to crash or hanging)
Additional InformationIt does not happen, if all elements in the document are deleted first. I guess, it might have something to do with the color gradients.
TagsNo tags attached.
Patch

Activities

kai

2012-11-04 01:12

reporter  

FlyerCrash.sla (21,357 bytes)

kai

2012-11-08 23:57

reporter   ~0029172

Happes also with newly created document after copying the elements into it. Thus not only a problem with files created with an older version.

fschmid

2012-11-09 20:55

administrator   ~0029178

Not reproduceable here, no matter what i try.

jghali

2012-11-09 22:18

administrator   ~0029183

I can reproduce a crash reliably enough with a moderately complex document when updating colors. From the backtrace it seems some part of the code may not be thread-safe enough so we can use QtConcurrent when updating colors. As a consequence the backtrace vary but there is a common pattern :

ScribusDoc::recalculateColorItem(PageItem * item=0x08cdf7f0) Ligne 497x
QtConcurrent::FunctionWrapper1<void,PageItem *>::operator()(PageItem * u=0x08cdf7f0) Ligne 86
QtConcurrent::MapKernel<QList<PageItem *>::iterator,QtConcurrent::FunctionWrapper1<void,PageItem *> >::runIteration(QList<PageItem *>::iterator it={...}, int __formal=13, int __formal=13) Ligne 74
QtConcurrent::MapKernel<QList<PageItem *>::iterator,QtConcurrent::FunctionWrapper1<void,PageItem *> >::runIterations(QList<PageItem *>::iterator sequenceBeginIterator={...}, int beginIndex=13, int endIndex=14, void * __formal=0x00000000) Ligne 83
QtConcurrent::IterateKernel<QList<PageItem *>::iterator,void>::forThreadFunction() Ligne 263
QtConcurrent::IterateKernel<QList<PageItem *>::iterator,void>::threadFunction() Ligne 225
QtConcurrent::ThreadEngineBase::run() Ligne 264
QThreadPoolThread::run() Ligne 107
QThreadPrivate::start(void * arg=0x08fdf450) Ligne 348

Issue History

Date Modified Username Field Change
2012-11-04 01:12 kai New Issue
2012-11-04 01:12 kai File Added: FlyerCrash.sla
2012-11-06 23:45 jghali Target Version => 1.5.0
2012-11-08 23:57 kai Note Added: 0029172
2012-11-09 20:55 fschmid Note Added: 0029178
2012-11-09 22:18 jghali Note Added: 0029183
2012-12-18 19:25 fschmid Status new => resolved
2012-12-18 19:25 fschmid Fixed in Version => 1.5.0svn
2012-12-18 19:25 fschmid Resolution open => fixed
2012-12-18 19:25 fschmid Assigned To => fschmid
2013-10-30 21:39 cbradney Status resolved => closed