From f71119fa632f6ca1b2b83a5416d372539607d234 Mon Sep 17 00:00:00 2001 From: Joshua Granick Date: Fri, 15 Jul 2016 10:30:58 -0700 Subject: [PATCH] Fix double dispatch --- lime/_backend/native/NativeWindow.hx | 12 +++++++++++- lime/app/Application.hx | 2 +- lime/graphics/utils/ImageCanvasUtil.hx | 2 -- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/lime/_backend/native/NativeWindow.hx b/lime/_backend/native/NativeWindow.hx index 8b823f983..e0fa5abb7 100644 --- a/lime/_backend/native/NativeWindow.hx +++ b/lime/_backend/native/NativeWindow.hx @@ -22,6 +22,7 @@ class NativeWindow { public var handle:Dynamic; + private var closing:Bool; private var parent:Window; @@ -47,7 +48,12 @@ class NativeWindow { public function close ():Void { - parent.onClose.dispatch (); + if (!closing) { + + closing = true; + parent.onClose.dispatch (); + + } if (!parent.onClose.canceled) { @@ -60,6 +66,10 @@ class NativeWindow { } + } else { + + closing = false; + } } diff --git a/lime/app/Application.hx b/lime/app/Application.hx index 6e7587d63..e692f0e00 100644 --- a/lime/app/Application.hx +++ b/lime/app/Application.hx @@ -191,7 +191,7 @@ class Application extends Module { } window.create (this); - __windows.push (window); + //__windows.push (window); windowByID.set (window.id, window); window.onCreate.dispatch (); diff --git a/lime/graphics/utils/ImageCanvasUtil.hx b/lime/graphics/utils/ImageCanvasUtil.hx index cb3451bee..feb2aaf43 100644 --- a/lime/graphics/utils/ImageCanvasUtil.hx +++ b/lime/graphics/utils/ImageCanvasUtil.hx @@ -56,8 +56,6 @@ class ImageCanvasUtil { } else { - - if (image.type == DATA && buffer.__srcImageData != null && image.dirty) { buffer.__srcContext.putImageData (buffer.__srcImageData, 0, 0);