Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT/carbon/org/eclipse/swt/widgets/Control.java3
1 files changed, 3 insertions, 0 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/carbon/org/eclipse/swt/widgets/Control.java b/bundles/org.eclipse.swt/Eclipse SWT/carbon/org/eclipse/swt/widgets/Control.java
index 94ba66405d..6369e78696 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT/carbon/org/eclipse/swt/widgets/Control.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT/carbon/org/eclipse/swt/widgets/Control.java
@@ -2252,7 +2252,10 @@ int kEventControlTrack (int nextHandler, int theEvent, int userData) {
display.pollingTimer = timer = id [0];
}
}
+ int window = OS.GetControlOwner (handle);
+ OS.CFRetain (window);
int result = super.kEventControlTrack (nextHandler, theEvent, userData);
+ OS.CFRelease (window);
if (timer != 0) {
OS.RemoveEventLoopTimer (timer);
display.pollingTimer = 0;

Back to the top