Log In
New Account
Home My Page Projects Blender 2.x BF release
Summary Activity Tracker SCM Files

Blender 2.6 Bug Tracker: Browse

[#26236] The Weight Paint curve editior becomes unpredictable when undoing

Date:
2011-02-26 23:29
Priority:
3
State:
Closed
Submitted by:
Steve Yen (conicer)
Assigned to:
Ton Roosendaal (ton)
Category:
Tools
Status:
Fixed / Closed
Relates to:
Duplicates:
Patches:
 
Summary:
The Weight Paint curve editior becomes unpredictable when undoing
Detailed description
The curve editor in Weight Paint mode is very unstable when performing the undo operation. Some of the time, it will give the correct output, but most of the times when undoing a change, it would either give incorrect outputs, freeze up, or crash.

Steps to reproduce:
1. From a default startup, select the cube then switch to weight paint mode.
2. In the tool shelf, open the Curve tab, and add a control point to the curve (I've added one to the lower left quadrant).
3. Press Ctrl-Z a couple of times.

From here Blender would then either draw a distorted curve in the graph, freeze up using all of the CPU, or crash with a segmentation fault. This method doesn't reliably to produce an error every time though, and in that case one would need to start a new blender session and repeat the above steps.

Fortunately, I was able to make it crash under gdb and obtain a stack trace from it:


GNU gdb (GDB) 7.2-ubuntu
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /home/conicer/Packages/blender-debug-trunk/install/linux2/blender...done.
(gdb) r
Starting program: /home/conicer/Packages/blender-debug-trunk/install/linux2/blender
[Thread debugging using libthread_db enabled]
[New Thread 0x7fffe796b700 (LWP 472)]
found bundled python: /home/conicer/Packages/blender-debug-trunk/install/linux2/2.56/python

Program received signal SIGSEGV, Segmentation fault.
0x0000000000aff2bd in ui_draw_but_CURVE (ar=0x23e5cd8, but=0x4373108,
wcol=0x2420448, rect=0x7fffffffddb0)
at source/blender/editors/interface/interface_draw.c:1478
1478 glVertex2f(rect->xmin, rect->ymin + zoomy*(cmp[0].y-offsy));
(gdb) bt
#0 0x0000000000aff2bd in ui_draw_but_CURVE (ar=0x23e5cd8, but=0x4373108,
wcol=0x2420448, rect=0x7fffffffddb0)
at source/blender/editors/interface/interface_draw.c:1478
#1 0x0000000000b2585d in ui_draw_but (C=0x1f7c548, ar=0x23e5cd8,
style=0x7fffffffddd0, but=0x4373108, rect=0x7fffffffddb0)
at source/blender/editors/interface/interface_widgets.c:3013
#2 0x0000000000b0242e in uiDrawBlock (C=0x1f7c548, block=0x21ec448)
at source/blender/editors/interface/interface.c:855
#3 0x0000000000ad4de4 in uiEndPanels (C=0x1f7c548, ar=0x23e5cd8)
at source/blender/editors/interface/interface_panel.c:853
#4 0x0000000000ab58e4 in ED_region_panels (C=0x1f7c548, ar=0x23e5cd8,
vertical=1, context=0x15e41a3 "weightpaint", contextnr=-1)
at source/blender/editors/screen/area.c:1383
#5 0x0000000000889e25 in view3d_tools_area_draw (C=0x1f7c548, ar=0x23e5cd8)
at source/blender/editors/space_view3d/space_view3d.c:891
#6 0x0000000000ab2ad6 in ED_region_do_draw (C=0x1f7c548, ar=0x23e5cd8)
at source/blender/editors/screen/area.c:340
#7 0x0000000000834c1f in wm_method_draw_overlap_all (C=0x1f7c548,
win=0x23c4688, exchange=0)
at source/blender/windowmanager/intern/wm_draw.c:249
#8 0x0000000000836128 in wm_draw_update (C=0x1f7c548)
at source/blender/windowmanager/intern/wm_draw.c:772
#9 0x000000000081db80 in WM_main (C=0x1f7c548)
---Type <return> to continue, or q <return> to quit---
at source/blender/windowmanager/intern/wm.c:353
#10 0x000000000081ab2f in main (argc=1, argv=0x7fffffffe258)
at source/creator/creator.c:1292
(gdb)


I'm using Blender trunk r35206 compiled under 64-bit Ubuntu 10.10. I was also able to reproduce the problem on a 32-bit machine. Hope this helps!

Followup

Message
  • Date: 2011-03-01 13:26
  • Sender: Ton Roosendaal
  • Fix is in svn, thanks for the report!
 

Attached Files:

No Files Currently Attached

Changes:

Field Old Value Date By
status_idOpen2011-03-01 13:26ton
close_dateNone2011-03-01 13:26ton
StatusInvestigate2011-03-01 13:26ton
assigned_tonone2011-02-27 14:38ton
StatusNew2011-02-27 14:38ton