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

0001-prevent-gdk-quartz-window-delegate-replacement.patch « gtk « patches « packages - github.com/mono/bockbuild.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 46ae2dc5bb71b0b361223ccb95de9a4d90cbdf7e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
diff --git a/gdk/quartz/GdkQuartzWindow.c b/gdk/quartz/GdkQuartzWindow.c
index e8e0de5c7..435c856be 100644
--- a/gdk/quartz/GdkQuartzWindow.c
+++ b/gdk/quartz/GdkQuartzWindow.c
@@ -259,6 +259,16 @@
   return [super makeFirstResponder:responder];
 }
 
+-(void)setDelegate:(id<NSWindowDelegate>)delegate
+{
+  if ([super delegate] == nil) {
+    [super setDelegate:delegate];
+  } else {
+    // If we allow the window delegate to be replaced, everything breaks.
+    g_critical ("Setting a delegate on GdkQuartzWindow is forbidden, because everything will break.");
+  }
+}
+
 -(id)initWithContentRect:(NSRect)contentRect styleMask:(NSUInteger)styleMask backing:(NSBackingStoreType)backingType defer:(BOOL)flag screen:(NSScreen *)screen
 {
   self = [super initWithContentRect:contentRect