|
|
| Line 16: |
Line 16: |
| 0061AFD4 inkscape.exe:0061AFD4 [[IntLigne]]::Copy(int, [[BitLigne]]**) Ligne.cpp:1597 | | 0061AFD4 inkscape.exe:0061AFD4 [[IntLigne]]::Copy(int, [[BitLigne]]**) Ligne.cpp:1597 |
| ... | | ... |
| c_full[0]=as[0]->fullB[(i+1-theSt)>>3] | as[0]->partB[(i+1-theSt)>>3]; | | c_full[0]=as[0]->fullB[(i 1-theSt)>>3] | as[0]->partB[(i 1-theSt)>>3]; |
| c_full[1]=as[1]->fullB[(i+1-theSt)>>3] | as[1]->partB[(i+1-theSt)>>3]; | | c_full[1]=as[1]->fullB[(i 1-theSt)>>3] | as[1]->partB[(i 1-theSt)>>3]; |
| > c_full[2]=as[2]->fullB[(i+1-theSt)>>3] | as[2]->partB[(i+1-theSt)>>3]; | | > c_full[2]=as[2]->fullB[(i 1-theSt)>>3] | as[2]->partB[(i 1-theSt)>>3]; |
| c_full[3]=as[3]->fullB[(i+1-theSt)>>3] | as[3]->partB[(i+1-theSt)>>3]; | | c_full[3]=as[3]->fullB[(i 1-theSt)>>3] | as[3]->partB[(i 1-theSt)>>3]; |
| } else { | | } else { |
| ... | | ... |
|
| |
|
| 0060[[B5CB]] inkscape.exe:0060[[B5CB]] nr_pixblock_render_bpath_rgba(Shape*, unsigned, [[NRRectL]]&, char*, int) canvas-bpath.cpp:625 | | 0060[[B5CB]] inkscape.exe:0060[[B5CB]] nr_pixblock_render_bpath_rgba(Shape*, unsigned, [[NRRectL]] |
| ...
| |
| dest.stv=y;
| |
| dest.buffer=ligStart;
| |
| > theIL->Raster(dest,&color,bpath_run_[[A8_OR]]);
| |
| ligStart=((uint32_t*)(((char*)ligStart)+stride));
| |
| }
| |
| ...
| |
| | |
| 0060[[C8DB]] inkscape.exe:0060[[C8DB]] sp_canvas_bpath_render(_[[SPCanvasItem]]*, [[SPCanvasBuf]]*) canvas-bpath.cpp:316
| |
| ...
| |
| }
| |
| if ( cbp->stroke_shp ) {
| |
| > nr_pixblock_render_bpath_rgba (cbp->stroke_shp,cbp->stroke_rgba,area,(char*)buf->buf, buf->buf_rowstride);
| |
| }
| |
| #else
| |
| ...
| |
| | |
| 004694D5 inkscape.exe:004694D5 sp_canvas_group_render(_[[SPCanvasItem]]*, [[SPCanvasBuf]]*) sp-canvas.cpp:790
| |
| ...
| |
| (child->y2 > buf->rect.y0)) {
| |
| if ([[SP_CANVAS_ITEM_GET_CLASS]] (child)->render)
| |
| > [[SP_CANVAS_ITEM_GET_CLASS]] (child)->render (child, buf);
| |
| }
| |
| }
| |
| ...
| |
| | |
| 004694D5 inkscape.exe:004694D5 sp_canvas_group_render(_[[SPCanvasItem]]*, [[SPCanvasBuf]]*) sp-canvas.cpp:790
| |
| ...
| |
| (child->y2 > buf->rect.y0)) {
| |
| if ([[SP_CANVAS_ITEM_GET_CLASS]] (child)->render)
| |
| > [[SP_CANVAS_ITEM_GET_CLASS]] (child)->render (child, buf);
| |
| }
| |
| }
| |
| ...
| |
| | |
| 004694D5 inkscape.exe:004694D5 sp_canvas_group_render(_[[SPCanvasItem]]*, [[SPCanvasBuf]]*) sp-canvas.cpp:790
| |
| ...
| |
| (child->y2 > buf->rect.y0)) {
| |
| if ([[SP_CANVAS_ITEM_GET_CLASS]] (child)->render)
| |
| > [[SP_CANVAS_ITEM_GET_CLASS]] (child)->render (child, buf);
| |
| }
| |
| }
| |
| ...
| |
| | |
| 0046[[A8BC]] inkscape.exe:0046[[A8BC]] sp_canvas_paint_rect(_SPCanvas*, int, int, int, int) sp-canvas.cpp:1516
| |
| ...
| |
|
| |
| if (canvas->root->object.flags & [[SP_CANVAS_ITEM_VISIBLE]]) {
| |
| > [[SP_CANVAS_ITEM_GET_CLASS]] (canvas->root)->render (canvas->root, &buf);
| |
| }
| |
|
| |
| ...
| |
| | |
| 0046[[A3F6]] inkscape.exe:0046[[A3F6]] paint(_SPCanvas*) sp-canvas.cpp:1716
| |
| ...
| |
|
| |
| if ((x0 < x1) && (y0 < y1)) {
| |
| > sp_canvas_paint_rect (canvas, x0, y0, x1, y1);
| |
| }
| |
| }
| |
| ...
| |
| | |
| 0046875B inkscape.exe:0046875B do_update(_SPCanvas*) sp-canvas.cpp:1738
| |
| ...
| |
| /* Paint if able to */
| |
| if ([[GTK_WIDGET_DRAWABLE]] (canvas)) {
| |
| > return paint (canvas);
| |
| }
| |
|
| |
| ...
| |
| | |
| 004687D0 inkscape.exe:004687D0 idle_handler(void*) sp-canvas.cpp:1758
| |
| ...
| |
| SPCanvas *canvas = [[SP_CANVAS]] (data);
| |
|
| |
| > const int ret = do_update (canvas);
| |
|
| |
| if (ret) {
| |
| ...
| |
| | |
| 01[[D9C865]] libglib-2.0-0.dll:01[[D9C865]] g_idle_remove_by_data
| |
| 01[[D9D07C]] libglib-2.0-0.dll:01[[D9D07C]] g_idle_remove_by_data
| |
| 01[[D9D6E3]] libglib-2.0-0.dll:01[[D9D6E3]] g_idle_remove_by_data
| |
| 01[[D9A21F]] libglib-2.0-0.dll:01[[D9A21F]] g_main_loop_run
| |
| 01FAD109 libgtk-win32-2.0-0.dll:01FAD109 gtk_main
| |
| 00401B51 inkscape.exe:00401B51
| |
| 004018D6 inkscape.exe:004018D6
| |
| 0040122D inkscape.exe:0040122D
| |
| 00401258 inkscape.exe:00401258
| |
| 77[[E992A6]] KERNEL32.dll:77[[E992A6]] [[GetCommandLineW]]
| |
| </tt>
| |
| | |
| | |
| === Commenting out bpath_liv in canvas_bpath.h makes freehand and dyna draw more stable (but slow), however node edit still crashes: ===
| |
| | |
| <tt>
| |
| inkscape.exe caused an Access Violation at location 00619da9 in module inkscape.exe Reading from location 04a98000.
| |
| | |
| Registers:
| |
| eax=0022fb80 ebx=04a97ff8 ecx=037fedc8 edx=00000002 esi=00000008 edi=03adf2d8
| |
| eip=00619da9 esp=0022f9c0 ebp=0022faa8 iopl=0 nv up ei pl nz ac pe nc
| |
| cs=001b ss=0023 ds=0023 es=0023 fs=0038 gs=0000 efl=00000212
| |
| | |
| Call stack:
| |
| 00619DA9 inkscape.exe:00619DA9 [[IntLigne]]::Copy(int, [[BitLigne]]**) Ligne.cpp:1595
| |
| ...
| |
| int chg=(i+1-theSt)&7;
| |
| if ( chg == 0 ) {
| |
| > c_full[0]=as[0]->fullB[(i+1-theSt)>>3] | as[0]->partB[(i+1-theSt)>>3];
| |
| c_full[1]=as[1]->fullB[(i+1-theSt)>>3] | as[1]->partB[(i+1-theSt)>>3];
| |
| c_full[2]=as[2]->fullB[(i+1-theSt)>>3] | as[2]->partB[(i+1-theSt)>>3];
| |
| ...
| |
| | |
| 005[[D13CE]] inkscape.exe:005[[D13CE]] nr_pixblock_render_ctrl_rgba(Shape*, unsigned, [[NRRectL]]&, char*, int) sp-ctrlline.cpp:487
| |
| ...
| |
| dest.stv=y;
| |
| dest.buffer=ligStart;
| |
| > theIL->Raster(dest,&color,ctrl_run_[[A8_OR]]);
| |
| ligStart=((uint32_t*)(((char*)ligStart)+stride));
| |
| }
| |
| ...
| |
| | |
| 005D2082 inkscape.exe:005D2082 sp_ctrlline_render(_[[SPCanvasItem]]*, [[SPCanvasBuf]]*) sp-ctrlline.cpp:173
| |
| ...
| |
| if (ctrlline->shp) {
| |
| sp_canvas_buf_ensure_buf (buf);
| |
| > nr_pixblock_render_ctrl_rgba (ctrlline->shp,ctrlline->rgba,area,(char*)buf->buf, buf->buf_rowstride);
| |
| }
| |
| #else
| |
| ...
| |
| | |
| 004694D5 inkscape.exe:004694D5 sp_canvas_group_render(_[[SPCanvasItem]]*, [[SPCanvasBuf]]*) sp-canvas.cpp:790
| |
| ...
| |
| (child->y2 > buf->rect.y0)) {
| |
| if ([[SP_CANVAS_ITEM_GET_CLASS]] (child)->render)
| |
| > [[SP_CANVAS_ITEM_GET_CLASS]] (child)->render (child, buf);
| |
| }
| |
| }
| |
| ...
| |
| | |
| 004694D5 inkscape.exe:004694D5 sp_canvas_group_render(_[[SPCanvasItem]]*, [[SPCanvasBuf]]*) sp-canvas.cpp:790
| |
| ...
| |
| (child->y2 > buf->rect.y0)) {
| |
| if ([[SP_CANVAS_ITEM_GET_CLASS]] (child)->render)
| |
| > [[SP_CANVAS_ITEM_GET_CLASS]] (child)->render (child, buf);
| |
| }
| |
| }
| |
| ...
| |
| | |
| 004694D5 inkscape.exe:004694D5 sp_canvas_group_render(_[[SPCanvasItem]]*, [[SPCanvasBuf]]*) sp-canvas.cpp:790
| |
| ...
| |
| (child->y2 > buf->rect.y0)) {
| |
| if ([[SP_CANVAS_ITEM_GET_CLASS]] (child)->render)
| |
| > [[SP_CANVAS_ITEM_GET_CLASS]] (child)->render (child, buf);
| |
| }
| |
| }
| |
| ...
| |
| | |
| 0046[[A8BC]] inkscape.exe:0046[[A8BC]] sp_canvas_paint_rect(_SPCanvas*, int, int, int, int) sp-canvas.cpp:1516
| |
| ...
| |
|
| |
| if (canvas->root->object.flags & [[SP_CANVAS_ITEM_VISIBLE]]) {
| |
| > [[SP_CANVAS_ITEM_GET_CLASS]] (canvas->root)->render (canvas->root, &buf);
| |
| }
| |
|
| |
| ...
| |
| | |
| 0046[[A3F6]] inkscape.exe:0046[[A3F6]] paint(_SPCanvas*) sp-canvas.cpp:1716
| |
| ...
| |
|
| |
| if ((x0 < x1) && (y0 < y1)) {
| |
| > sp_canvas_paint_rect (canvas, x0, y0, x1, y1);
| |
| }
| |
| }
| |
| ...
| |
| | |
| 0046875B inkscape.exe:0046875B do_update(_SPCanvas*) sp-canvas.cpp:1738
| |
| ...
| |
| /* Paint if able to */
| |
| if ([[GTK_WIDGET_DRAWABLE]] (canvas)) {
| |
| > return paint (canvas);
| |
| }
| |
|
| |
| ...
| |
| | |
| 004687D0 inkscape.exe:004687D0 idle_handler(void*) sp-canvas.cpp:1758
| |
| ...
| |
| SPCanvas *canvas = [[SP_CANVAS]] (data);
| |
|
| |
| > const int ret = do_update (canvas);
| |
|
| |
| if (ret) {
| |
| ...
| |
| | |
| 01[[D8C865]] libglib-2.0-0.dll:01[[D8C865]] g_idle_remove_by_data
| |
| 01[[D8D07C]] libglib-2.0-0.dll:01[[D8D07C]] g_idle_remove_by_data
| |
| 01[[D8D6E3]] libglib-2.0-0.dll:01[[D8D6E3]] g_idle_remove_by_data
| |
| 01[[D8A21F]] libglib-2.0-0.dll:01[[D8A21F]] g_main_loop_run
| |
| 01[[F9D109]] libgtk-win32-2.0-0.dll:01[[F9D109]] gtk_main
| |
| 00401B51 inkscape.exe:00401B51
| |
| 004018D6 inkscape.exe:004018D6
| |
| 0040122D inkscape.exe:0040122D
| |
| 00401258 inkscape.exe:00401258
| |
| 77[[E992A6]] KERNEL32.dll:77[[E992A6]] [[GetCommandLineW]]
| |
| | |
| </tt>
| |
| | |
| [[Category:Wiki Attic]]
| |
The following is debug data generated after crashing inkscape in the freehand tool on my windows 2000 machine.
Machine spec is 2.1Ghz Athlon, 512Mb Win2k.
Can also crash it in the node edit and dynamic draw modes.
John
inkscape.exe caused an Access Violation at location 0061afd4 in module inkscape.exe Reading from location 03a3c000.
Registers:
eax=0022fb80 ebx=0022fb80 ecx=038ea570 edx=00000002 esi=03a3bff8 edi=0399f6e0
eip=0061afd4 esp=0022f9c0 ebp=0022faa8 iopl=0 nv up ei pl nz na pe nc
cs=001b ss=0023 ds=0023 es=0023 fs=0038 gs=0000 efl=00200202
Call stack:
0061AFD4 inkscape.exe:0061AFD4 IntLigne::Copy(int, BitLigne**) Ligne.cpp:1597
...
c_full[0]=as[0]->fullB[(i 1-theSt)>>3] | as[0]->partB[(i 1-theSt)>>3];
c_full[1]=as[1]->fullB[(i 1-theSt)>>3] | as[1]->partB[(i 1-theSt)>>3];
> c_full[2]=as[2]->fullB[(i 1-theSt)>>3] | as[2]->partB[(i 1-theSt)>>3];
c_full[3]=as[3]->fullB[(i 1-theSt)>>3] | as[3]->partB[(i 1-theSt)>>3];
} else {
...
0060B5CB inkscape.exe:0060B5CB nr_pixblock_render_bpath_rgba(Shape*, unsigned, NRRectL