[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [35558] trunk/blender/source/blender/ editors: fix for crash with textbox add poll function, missing NULL check.
Campbell Barton
ideasman42 at gmail.com
Tue Mar 15 09:38:09 CET 2011
Revision: 35558
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=35558
Author: campbellbarton
Date: 2011-03-15 08:38:08 +0000 (Tue, 15 Mar 2011)
Log Message:
-----------
fix for crash with textbox add poll function, missing NULL check.
Modified Paths:
--------------
trunk/blender/source/blender/editors/curve/editfont.c
trunk/blender/source/blender/editors/include/ED_screen.h
trunk/blender/source/blender/editors/screen/screen_ops.c
Modified: trunk/blender/source/blender/editors/curve/editfont.c
===================================================================
--- trunk/blender/source/blender/editors/curve/editfont.c 2011-03-15 08:04:11 UTC (rev 35557)
+++ trunk/blender/source/blender/editors/curve/editfont.c 2011-03-15 08:38:08 UTC (rev 35558)
@@ -1373,16 +1373,6 @@
/*********************** textbox add operator *************************/
-static int textbox_poll(bContext *C)
-{
- Object *ob = CTX_data_active_object(C);
-
- if (!ED_operator_object_active_editable(C) ) return 0;
- if (ob->type != OB_FONT) return 0;
-
- return 1;
-}
-
static int textbox_add_exec(bContext *C, wmOperator *UNUSED(op))
{
Object *obedit= CTX_data_active_object(C);
@@ -1409,8 +1399,8 @@
/* api callbacks */
ot->exec= textbox_add_exec;
- ot->poll= textbox_poll;
-
+ ot->poll= ED_operator_object_active_editable_font;
+
/* flags */
ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO;
@@ -1452,7 +1442,7 @@
/* api callbacks */
ot->exec= textbox_remove_exec;
- ot->poll= textbox_poll;
+ ot->poll= ED_operator_object_active_editable_font;
/* flags */
ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO;
Modified: trunk/blender/source/blender/editors/include/ED_screen.h
===================================================================
--- trunk/blender/source/blender/editors/include/ED_screen.h 2011-03-15 08:04:11 UTC (rev 35557)
+++ trunk/blender/source/blender/editors/include/ED_screen.h 2011-03-15 08:38:08 UTC (rev 35558)
@@ -154,6 +154,7 @@
int ED_operator_object_active(struct bContext *C);
int ED_operator_object_active_editable(struct bContext *C);
int ED_operator_object_active_editable_mesh(struct bContext *C);
+int ED_operator_object_active_editable_font(struct bContext *C);
int ED_operator_editmesh(struct bContext *C);
int ED_operator_editmesh_view3d(struct bContext *C);
int ED_operator_editmesh_region_view3d(struct bContext *C);
Modified: trunk/blender/source/blender/editors/screen/screen_ops.c
===================================================================
--- trunk/blender/source/blender/editors/screen/screen_ops.c 2011-03-15 08:04:11 UTC (rev 35557)
+++ trunk/blender/source/blender/editors/screen/screen_ops.c 2011-03-15 08:38:08 UTC (rev 35558)
@@ -282,6 +282,12 @@
return ((ob != NULL) && !(ob->id.lib) && !(ob->restrictflag & OB_RESTRICT_VIEW) && ob->type == OB_MESH);
}
+int ED_operator_object_active_editable_font(bContext *C)
+{
+ Object *ob = ED_object_active_context(C);
+ return ((ob != NULL) && !(ob->id.lib) && !(ob->restrictflag & OB_RESTRICT_VIEW) && ob->type == OB_FONT);
+}
+
int ED_operator_editmesh(bContext *C)
{
Object *obedit= CTX_data_edit_object(C);
More information about the Bf-blender-cvs
mailing list