View Issue Details

IDProjectCategoryView StatusLast Update
0005068ScribusGeneralpublic2007-01-04 12:43
ReporterplinnellAssigned Tofschmid  
PrioritynormalSeveritycrashReproducibilityalways
Status closedResolutionfixed 
Product Version1.3.4cvs 
Fixed in Version1.3.4cvs 
Summary0005068: crash when loading stencil from kivio
Descriptioni found a crash when loading a kivio stencil into patterns into a new doc
Steps To Reproduceopen 134lipsum.sla.ga
create new doc
draw a shape
go to PP and make fill color none
import stencil from kivio
Additional Informationhttp://pastebin.ca/303901
TagsNo tags attached.
Patch

Relationships

child of 0003964 closedplinnell 1.3.4 Release Metabug 

Activities

2007-01-04 00:38

 

DesktopPC3D.sml (23,345 bytes)

cbradney

2007-01-04 00:51

administrator   ~0014459

void GradientPreview::updateDisplay()
{
    repaint();
    ActStop = 0;
    if (!fill_gradient.colorStops().isEmpty())
    {
        QPtrVector<VColorStop> cstops = fill_gradient.colorStops();
        emit selectedColor(cstops.at(ActStop)->name, cstops.at(ActStop)->shade);
        emit currTrans(cstops.at(ActStop)->opacity);
        emit currStep(cstops.at(ActStop)->rampPoint);
    }
}

Putting in this if will fix the crash here however it will then crash with:
0x087a9031 in art_render_pattern_render (self=0x90c4970, render=0x8f90b50, dest=0xb68feec8 "ÿÿÿ", y=0)
    at art_render_pattern.c:68
68 x0 = (x0 % twidth);
Current language: auto; currently c
(gdb) bt
#0 0x087a9031 in art_render_pattern_render (self=0x90c4970, render=0x8f90b50, dest=0xb68feec8 "ÿÿÿ", y=0)
    at art_render_pattern.c:68
0000001 0xb73f84f1 in art_render_invoke_callbacks () from /usr/lib/libart_lgpl_2.so.2
0000002 0xb73fb1f1 in art_render_svp () from /usr/lib/libart_lgpl_2.so.2
0000003 0xb7400a33 in art_svp_render_aa () from /usr/lib/libart_lgpl_2.so.2
0000004 0xb73fb31a in art_render_svp () from /usr/lib/libart_lgpl_2.so.2
0000005 0xb73f90b5 in art_render_invoke () from /usr/lib/libart_lgpl_2.so.2
0000006 0x085291c8 in ScPainter::applyPattern (this=0x8d2c178, svp=0x8f07008) at scpainter.cpp:1971
0000007 0x0852bb4c in ScPainter::drawVPath (this=dwarf2_read_address: Corrupted DWARF expression.
) at scpainter.cpp:1381
0000008 0x0852be40 in ScPainter::fillPath (this=0x8d2c178) at scpainter.cpp:999
0000009 0x083ef704 in PageItem_Polygon::DrawObj_Item (this=0x93c6188, p=0x8d2c178) at pageitem_polygon.cpp:66
0000010 0x083d9464 in PageItem::DrawObj (this=0x93c6188, p=0x8d2c178, e={x1 = 230, y1 = 163, x2 = 602, y2 = 521})
    at pageitem.cpp:789
0000011 0x08587758 in ScribusView::DrawPageItems (this=0x8f1e358, painter=0x8d2c178, clip=
      {x1 = 230, y1 = 163, x2 = 602, y2 = 521}) at scribusview.cpp:1101
0000012 0x0858d920 in ScribusView::drawContents (this=0x8f1e358, psx=0xbfb33b0c, clipx=230, clipy=163, clipw=373, cliph=359)
    at scribusview.cpp:581
0000013 0xb79c7913 in QScrollView::drawContentsOffset () from /usr/qt/3/lib/libqt-mt.so.3
0000014 0xb79c9665 in QScrollView::viewportPaintEvent () from /usr/qt/3/lib/libqt-mt.so.3
0000015 0x085892a3 in ScribusView::viewportPaintEvent (this=0x8f1e358, p=0xbfb33ef8) at scribusview.cpp:354
0000016 0xb79ca40f in QScrollView::eventFilter () from /usr/qt/3/lib/libqt-mt.so.3
0000017 0xb78b60a6 in QObject::activate_filters () from /usr/qt/3/lib/libqt-mt.so.3
0000018 0xb78b610b in QObject::event () from /usr/qt/3/lib/libqt-mt.so.3
0000019 0xb78ef00c in QWidget::event () from /usr/qt/3/lib/libqt-mt.so.3
0000020 0xb78576c7 in QApplication::internalNotify () from /usr/qt/3/lib/libqt-mt.so.3
0000021 0xb78582c9 in QApplication::notify () from /usr/qt/3/lib/libqt-mt.so.3
0000022 0xb7829b54 in QWidget::repaint () from /usr/qt/3/lib/libqt-mt.so.3
0000023 0xb7858f5a in QApplication::sendPostedEvents () from /usr/qt/3/lib/libqt-mt.so.3
0000024 0xb7859054 in QApplication::sendPostedEvents () from /usr/qt/3/lib/libqt-mt.so.3
0000025 0xb7807190 in QEventLoop::processEvents () from /usr/qt/3/lib/libqt-mt.so.3
0000026 0xb786e251 in QEventLoop::enterLoop () from /usr/qt/3/lib/libqt-mt.so.3
0000027 0xb786e0d6 in QEventLoop::exec () from /usr/qt/3/lib/libqt-mt.so.3
0000028 0xb785714f in QApplication::exec () from /usr/qt/3/lib/libqt-mt.so.3
0000029 0x0875c358 in mainApp (argc=1, argv=0xbfb342a4) at main_nix.cpp:76
0000030 0x0875c396 in main (argc=Cannot access memory at address 0x167

when applying the pattern.

Please also fix the import when the PNG file is not in place or doesnt have the right name. The import must fail with a nice error.

2007-01-04 00:52

 

DesktopPC3D.png (1,945 bytes)   
DesktopPC3D.png (1,945 bytes)   

fschmid

2007-01-04 09:27

developer   ~0014480

Must be a libart only issue as it works with the cairo build here.
What puzzles me is that the crash is in the gradient code, the stencils don't have any gradients at all.
And for the import into the patterns, there are no .png files envolved at all here. And for the Scrapbook the .png's should be created on the fly.

cbradney

2007-01-04 09:43

administrator   ~0014484

It crashes in cairo too, mrdocs said so last night. Pattern import does not work here without the png file. It crashes in the gradient area because the gradient code doesnt handle not having any colorstops. Why its getting in there is possibly a different issue.

Issue History

Date Modified Username Field Change
2007-01-04 00:38 plinnell New Issue
2007-01-04 00:38 plinnell File Added: DesktopPC3D.sml
2007-01-04 00:38 plinnell Status new => assigned
2007-01-04 00:38 plinnell Assigned To => cbradney
2007-01-04 00:51 cbradney Note Added: 0014459
2007-01-04 00:51 cbradney Assigned To cbradney => fschmid
2007-01-04 00:52 cbradney File Added: DesktopPC3D.png
2007-01-04 00:52 cbradney Relationship added child of 0003964
2007-01-04 00:53 plinnell Steps to Reproduce Updated
2007-01-04 09:27 fschmid Note Added: 0014480
2007-01-04 09:43 cbradney Note Added: 0014484
2007-01-04 11:07 fschmid Status assigned => resolved
2007-01-04 11:07 fschmid Fixed in Version => 1.3.4cvs
2007-01-04 11:07 fschmid Resolution open => fixed
2007-01-04 12:42 cbradney Status resolved => closed