* app/tools/gimprectangleselecttool.c: Fix sporadic crash
	resulting from previous change.
This commit is contained in:
William Skaggs
2006-06-14 20:19:49 +00:00
parent a26b124251
commit 27be3ce242
2 changed files with 17 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2006-06-14 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/gimprectangleselecttool.c: Fix sporadic crash
resulting from previous change.
2006-06-14 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/gimprectangleselecttool.c: As suggested by Joao,

View File

@ -180,7 +180,6 @@ gimp_rect_select_tool_init (GimpRectSelectTool *rect_select)
GimpRectangleTool *rect_tool = GIMP_RECTANGLE_TOOL (rect_select);
gimp_tool_control_set_tool_cursor (tool->control, GIMP_TOOL_CURSOR_RECT_SELECT);
/* gimp_tool_control_set_preserve (tool->control, FALSE); */
gimp_tool_control_set_dirty_mask (tool->control,
GIMP_DIRTY_IMAGE_SIZE |
GIMP_DIRTY_SELECTION);
@ -592,8 +591,15 @@ gimp_rect_select_tool_execute (GimpRectangleTool *rectangle,
}
else
{
GimpTool *tool = GIMP_TOOL (rectangle);
/* prevent this change from halting the tool */
gimp_tool_control_set_preserve (tool->control, TRUE);
/* otherwise clear the selection */
gimp_channel_clear (selection, NULL, TRUE);
gimp_tool_control_set_preserve (tool->control, FALSE);
}
}
@ -619,8 +625,13 @@ gimp_rect_select_tool_cancel (GimpRectangleTool *rectangle)
if (undo && rect_select->undo == undo)
{
/* prevent this change from halting the tool */
gimp_tool_control_set_preserve (tool->control, TRUE);
gimp_image_undo (image);
gimp_image_flush (image);
gimp_tool_control_set_preserve (tool->control, FALSE);
}
}