Revision: 28489
http://sourceforge.net/p/bibdesk/svn/28489
Author: hofman
Date: 2023-12-30 17:08:28 +0000 (Sat, 30 Dec 2023)
Log Message:
-----------
let completionHandler block retain window controller for sheet
Modified Paths:
--------------
trunk/bibdesk/NSWindowController_BDSKExtensions.m
Modified: trunk/bibdesk/NSWindowController_BDSKExtensions.m
===================================================================
--- trunk/bibdesk/NSWindowController_BDSKExtensions.m 2023-12-30 16:53:51 UTC
(rev 28488)
+++ trunk/bibdesk/NSWindowController_BDSKExtensions.m 2023-12-30 17:08:28 UTC
(rev 28489)
@@ -94,8 +94,12 @@
#pragma mark Sheet methods
- (void)beginSheetModalForWindow:(NSWindow *)window completionHandler:(void
(^)(NSInteger result))handler {
- [self retain]; // make sure we stay around long enough
- [window beginSheet:[self window] completionHandler:handler];
+ __block id strongSelf = [self retain];
+ [window beginSheet:[self window] completionHandler:^(NSModalResponse
result){
+ if (handler)
+ handler(result);
+ BDSKDESTROY(strongSelf);
+ }];
}
- (void)didDismissSheet {}
@@ -105,7 +109,6 @@
if (window) {
[window endSheet:[self window] returnCode:[sender tag]];
[self didDismissSheet];
- [self autorelease];
}
}
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
_______________________________________________
Bibdesk-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bibdesk-commit