Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Gavrilov <angavrilov@gmail.com>2019-11-13 13:42:01 +0300
committerAlexander Gavrilov <angavrilov@gmail.com>2019-11-18 22:03:40 +0300
commit04272613a78d805e900941b21df16dbbcafc6849 (patch)
tree45f008b0d2c472d5fea86e7cb7234a1b6c64bef3 /source/blender/makesrna/intern/rna_wm_api.c
parent64c27b96909834381558375ee1f27bdec04360f3 (diff)
Python API: assume that a crashed Python operator returned FINISHED.
The CANCELLED return value from an operator is intended for signaling that the operator aborted execution without changing anything, and an Undo stack entry should not be created. When a Python operator crashes, it is not safe to assume that it did nothing, so it should interpret it as FINISHED instead. Otherwise, the undo system behavior after an operator failure feels broken. Differential Revision: https://developer.blender.org/D6241
Diffstat (limited to 'source/blender/makesrna/intern/rna_wm_api.c')
-rw-r--r--source/blender/makesrna/intern/rna_wm_api.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/source/blender/makesrna/intern/rna_wm_api.c b/source/blender/makesrna/intern/rna_wm_api.c
index 1330250edab..841d82adcb7 100644
--- a/source/blender/makesrna/intern/rna_wm_api.c
+++ b/source/blender/makesrna/intern/rna_wm_api.c
@@ -639,7 +639,7 @@ static void rna_generic_op_invoke(FunctionRNA *func, int flag)
if (flag & WM_GEN_INVOKE_RETURN) {
parm = RNA_def_enum_flag(
- func, "result", rna_enum_operator_return_items, OPERATOR_CANCELLED, "result", "");
+ func, "result", rna_enum_operator_return_items, OPERATOR_FINISHED, "result", "");
RNA_def_function_return(func, parm);
}
}
@@ -914,7 +914,7 @@ void RNA_api_operator(StructRNA *srna)
/* better name? */
parm = RNA_def_enum_flag(
- func, "result", rna_enum_operator_return_items, OPERATOR_CANCELLED, "result", "");
+ func, "result", rna_enum_operator_return_items, OPERATOR_FINISHED, "result", "");
RNA_def_function_return(func, parm);
/* check */
@@ -939,7 +939,7 @@ void RNA_api_operator(StructRNA *srna)
/* better name? */
parm = RNA_def_enum_flag(
- func, "result", rna_enum_operator_return_items, OPERATOR_CANCELLED, "result", "");
+ func, "result", rna_enum_operator_return_items, OPERATOR_FINISHED, "result", "");
RNA_def_function_return(func, parm);
func = RNA_def_function(srna, "modal", NULL); /* same as invoke */
@@ -952,7 +952,7 @@ void RNA_api_operator(StructRNA *srna)
/* better name? */
parm = RNA_def_enum_flag(
- func, "result", rna_enum_operator_return_items, OPERATOR_CANCELLED, "result", "");
+ func, "result", rna_enum_operator_return_items, OPERATOR_FINISHED, "result", "");
RNA_def_function_return(func, parm);
/* draw */