[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [61019] trunk/blender/source/blender/ windowmanager/intern/wm_operators.c: cancelling an operator popup now calls the operators cancel callback.

Campbell Barton ideasman42 at gmail.com
Thu Oct 31 00:15:28 CET 2013


Revision: 61019
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=61019
Author:   campbellbarton
Date:     2013-10-30 23:15:27 +0000 (Wed, 30 Oct 2013)
Log Message:
-----------
cancelling an operator popup now calls the operators cancel callback.

Modified Paths:
--------------
    trunk/blender/source/blender/windowmanager/intern/wm_operators.c

Modified: trunk/blender/source/blender/windowmanager/intern/wm_operators.c
===================================================================
--- trunk/blender/source/blender/windowmanager/intern/wm_operators.c	2013-10-30 23:14:22 UTC (rev 61018)
+++ trunk/blender/source/blender/windowmanager/intern/wm_operators.c	2013-10-30 23:15:27 UTC (rev 61019)
@@ -1396,12 +1396,19 @@
 	return block;
 }
 
-static void wm_operator_ui_popup_cancel(struct bContext *UNUSED(C), void *userData)
+static void wm_operator_ui_popup_cancel(struct bContext *C, void *userData)
 {
 	wmOpPopUp *data = userData;
-	if (data->free_op && data->op) {
-		wmOperator *op = data->op;
-		WM_operator_free(op);
+	wmOperator *op = data->op;
+
+	if (op) {
+		if (op->type->cancel) {
+			op->type->cancel(C, op);
+		}
+
+		if (data->free_op) {
+			WM_operator_free(op);
+		}
 	}
 
 	MEM_freeN(data);




More information about the Bf-blender-cvs mailing list