Revision: 28551
          http://sourceforge.net/p/bibdesk/svn/28551
Author:   hofman
Date:     2024-01-05 18:06:57 +0000 (Fri, 05 Jan 2024)
Log Message:
-----------
bridge retained to avoid objc object to be released by ARC

Modified Paths:
--------------
    trunk/QuickLook-BibDesk/BDSKSpotlightIconController.m
    trunk/QuickLook-BibDesk/BDSKSyntaxHighlighter.m
    trunk/QuickLook-BibDesk/GeneratePreviewForURL.m
    trunk/QuickLook-BibDesk/GenerateThumbnailForURL.m

Modified: trunk/QuickLook-BibDesk/BDSKSpotlightIconController.m
===================================================================
--- trunk/QuickLook-BibDesk/BDSKSpotlightIconController.m       2024-01-05 
18:06:43 UTC (rev 28550)
+++ trunk/QuickLook-BibDesk/BDSKSpotlightIconController.m       2024-01-05 
18:06:57 UTC (rev 28551)
@@ -148,11 +148,11 @@
     
     // anItem is key-value coding compliant
     addDictionaryWithAttributeAndValue(values, @"Container:", [anItem 
valueForKey:@"net_sourceforge_bibdesk_container"]);
-    addDictionaryWithAttributeAndValue(values, @"Title:", [anItem 
valueForKey:(NSString *)kMDItemTitle]);
+    addDictionaryWithAttributeAndValue(values, @"Title:", [anItem 
valueForKey:(__bridge NSString *)kMDItemTitle]);
     addDictionaryWithAttributeAndValue(values, @"Year:", [dateFormatter 
stringFromDate:[anItem 
valueForKey:@"net_sourceforge_bibdesk_publicationdate"]]);
-    addDictionariesFromMultivaluedAttribute(values, @"Authors:", [anItem 
valueForKey:(NSString *)kMDItemAuthors]);
-    addDictionariesFromMultivaluedAttribute(values, @"Editors:", [anItem 
valueForKey:(NSString *)kMDItemEditors]);
-    addDictionariesFromMultivaluedAttribute(values, @"Keywords:", [anItem 
valueForKey:(NSString *)kMDItemKeywords]);
+    addDictionariesFromMultivaluedAttribute(values, @"Authors:", [anItem 
valueForKey:(__bridge NSString *)kMDItemAuthors]);
+    addDictionariesFromMultivaluedAttribute(values, @"Editors:", [anItem 
valueForKey:(__bridge NSString *)kMDItemEditors]);
+    addDictionariesFromMultivaluedAttribute(values, @"Keywords:", [anItem 
valueForKey:(__bridge NSString *)kMDItemKeywords]);
     
     while ([values count] < 10)
         // empty lines for the rest

Modified: trunk/QuickLook-BibDesk/BDSKSyntaxHighlighter.m
===================================================================
--- trunk/QuickLook-BibDesk/BDSKSyntaxHighlighter.m     2024-01-05 18:06:43 UTC 
(rev 28550)
+++ trunk/QuickLook-BibDesk/BDSKSyntaxHighlighter.m     2024-01-05 18:06:57 UTC 
(rev 28551)
@@ -72,7 +72,7 @@
 
     NSCharacterSet *newlineSet = [NSCharacterSet newlineCharacterSet];
     
-    CFStringRef string = (__bridge CFStringRef)[attributedString string];
+    CFStringRef string = CFBridgingRetain([attributedString string]);
     CFIndex length = CFStringGetLength(string);
     SetColor([NSColor orangeColor], 0, length);
 
@@ -183,6 +183,7 @@
             SetColor(hashColor, cnt, 1);
         }
     }
+    CFRelease(string);
     
     [attributedString addAttribute:NSFontAttributeName value:[NSFont 
userFixedPitchFontOfSize:10.0] range:NSMakeRange(0, [attributedString length])];
     return attributedString;

Modified: trunk/QuickLook-BibDesk/GeneratePreviewForURL.m
===================================================================
--- trunk/QuickLook-BibDesk/GeneratePreviewForURL.m     2024-01-05 18:06:43 UTC 
(rev 28550)
+++ trunk/QuickLook-BibDesk/GeneratePreviewForURL.m     2024-01-05 18:06:57 UTC 
(rev 28551)
@@ -66,9 +66,9 @@
             NSMutableDictionary *mdItem = [[NSMutableDictionary alloc] 
initWithContentsOfURL:(__bridge NSURL *)url];
             
             // if we don't have a URL, show something useful (this is 
multivalued, but it uses the fallback case)
-            NSArray *whereFrom = [mdItem objectForKey:(NSString 
*)kMDItemWhereFroms];
+            NSArray *whereFrom = [mdItem objectForKey:(__bridge NSString 
*)kMDItemWhereFroms];
             if ([whereFrom count] == 0)
-                [mdItem setObject:@"No URL" forKey:(NSString 
*)kMDItemWhereFroms];
+                [mdItem setObject:@"No URL" forKey:(__bridge NSString 
*)kMDItemWhereFroms];
             
             NSDate *date = [mdItem 
objectForKey:@"net_sourceforge_bibdesk_publicationdate"];
             if (date) {
@@ -105,9 +105,10 @@
             }
                 
             NSDictionary *properties = [[NSDictionary alloc] 
initWithObjectsAndKeys:@"text/html", kQLPreviewPropertyMIMETypeKey, @"utf-8", 
kQLPreviewPropertyTextEncodingNameKey, nil];
-            CFDataRef data = (__bridge CFDataRef)[string 
dataUsingEncoding:NSUTF8StringEncoding];
+            CFDataRef data = CFBridgingRetain([string 
dataUsingEncoding:NSUTF8StringEncoding]);
             if (nil != data) {
                 QLPreviewRequestSetDataRepresentation(preview, data, 
kUTTypeHTML, (__bridge CFDictionaryRef)properties);
+                CFRelease(data);
             } else{
                 err = 1;
             }
@@ -141,10 +142,11 @@
             
             [attributedString fixAttributesInRange:NSMakeRange(0, 
[attributedString length])];
             
-            CFDataRef data = (__bridge CFDataRef)[attributedString 
RTFFromRange:NSMakeRange(0, [attributedString length]) 
documentAttributes:[NSDictionary 
dictionaryWithObjectsAndKeys:NSRTFTextDocumentType, 
NSDocumentTypeDocumentAttribute, nil]];
+            CFDataRef data = CFBridgingRetain([attributedString 
RTFFromRange:NSMakeRange(0, [attributedString length]) 
documentAttributes:[NSDictionary 
dictionaryWithObjectsAndKeys:NSRTFTextDocumentType, 
NSDocumentTypeDocumentAttribute, nil]]);
             
             if (data) {
                 QLPreviewRequestSetDataRepresentation(preview, data, 
kUTTypeRTF, NULL);
+                CFRelease(data);
             } else {
                 err = 2;
             }
@@ -160,9 +162,10 @@
             
             if (btString) {
                 if (UTTypeEqual(CFSTR("org.tug.tex.bibtex"), contentTypeUTI)) {
-                    CFDataRef data = (__bridge 
CFDataRef)[BDSKSyntaxHighlighter RTFDataWithBibTeXString:btString];
+                    CFDataRef data = CFBridgingRetain([BDSKSyntaxHighlighter 
RTFDataWithBibTeXString:btString]);
                     if (data) {
                         QLPreviewRequestSetDataRepresentation(preview, data, 
kUTTypeRTF, NULL);
+                        CFRelease(data);
                     } else {
                         err = 2;
                     }
@@ -169,12 +172,13 @@
                 }
                 else {
                     // some other plain text type...
-                    CFDataRef data = (__bridge CFDataRef)[btString 
dataUsingEncoding:NSUnicodeStringEncoding];
+                    CFDataRef data = CFBridgingRetain([btString 
dataUsingEncoding:NSUnicodeStringEncoding]);
                     // encoding must be a CF encoding
                     NSNumber *encoding = [NSNumber 
numberWithUnsignedInteger:CFStringConvertNSStringEncodingToEncoding(NSUnicodeStringEncoding)];
                     NSDictionary *properties = [[NSDictionary alloc] 
initWithObjectsAndKeys:encoding, kQLPreviewPropertyStringEncodingKey, nil];
                     if (data) {
                         QLPreviewRequestSetDataRepresentation(preview, data, 
kUTTypePlainText, (__bridge CFDictionaryRef)properties);
+                        CFRelease(data);
                     } else {
                         err = 2;
                     }

Modified: trunk/QuickLook-BibDesk/GenerateThumbnailForURL.m
===================================================================
--- trunk/QuickLook-BibDesk/GenerateThumbnailForURL.m   2024-01-05 18:06:43 UTC 
(rev 28550)
+++ trunk/QuickLook-BibDesk/GenerateThumbnailForURL.m   2024-01-05 18:06:57 UTC 
(rev 28551)
@@ -83,11 +83,11 @@
     
     // anItem is key-value coding compliant
     addDictionaryWithAttributeAndValue(values, @"Container:", [anItem 
valueForKey:@"net_sourceforge_bibdesk_container"], NO);
-    addDictionaryWithAttributeAndValue(values, @"Title:", [anItem 
valueForKey:(NSString *)kMDItemTitle], NO);
+    addDictionaryWithAttributeAndValue(values, @"Title:", [anItem 
valueForKey:(__bridge NSString *)kMDItemTitle], NO);
     addDictionaryWithAttributeAndValue(values, @"Year:", [dateFormatter 
stringFromDate:[anItem 
valueForKey:@"net_sourceforge_bibdesk_publicationdate"]], NO);
-    addDictionariesFromMultivaluedAttribute(values, @"Authors:", [anItem 
valueForKey:(NSString *)kMDItemAuthors]);
-    addDictionariesFromMultivaluedAttribute(values, @"Editors:", [anItem 
valueForKey:(NSString *)kMDItemEditors]);
-    addDictionariesFromMultivaluedAttribute(values, @"Keywords:", [anItem 
valueForKey:(NSString *)kMDItemKeywords]);
+    addDictionariesFromMultivaluedAttribute(values, @"Authors:", [anItem 
valueForKey:(__bridge NSString *)kMDItemAuthors]);
+    addDictionariesFromMultivaluedAttribute(values, @"Editors:", [anItem 
valueForKey:(__bridge NSString *)kMDItemEditors]);
+    addDictionariesFromMultivaluedAttribute(values, @"Keywords:", [anItem 
valueForKey:(__bridge NSString *)kMDItemKeywords]);
     
     return values;
 }

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

Reply via email to