Revision: 29795
          http://sourceforge.net/p/bibdesk/svn/29795
Author:   hofman
Date:     2025-11-13 23:08:51 +0000 (Thu, 13 Nov 2025)
Log Message:
-----------
use secure coding to decode template prefs

Modified Paths:
--------------
    trunk/bibdesk/BDSKTemplate.m

Modified: trunk/bibdesk/BDSKTemplate.m
===================================================================
--- trunk/bibdesk/BDSKTemplate.m        2025-11-13 18:21:53 UTC (rev 29794)
+++ trunk/bibdesk/BDSKTemplate.m        2025-11-13 23:08:51 UTC (rev 29795)
@@ -269,7 +269,7 @@
         NSArray *templates = nil;
         NSData *prefData = [[NSUserDefaults standardUserDefaults] 
objectForKey:BDSKExportTemplateTree];
         if ([prefData length])
-            templates = [NSKeyedUnarchiver unarchiveObjectWithData:prefData];
+            templates = [NSKeyedUnarchiver unarchivedObjectOfClasses:[NSSet 
setWithObjects:[NSArray class], [BDSKTreeNode class], nil] fromData:prefData 
error:NULL];
         if ([templates count] == 0)
             templates = [BDSKTemplate defaultExportTemplates];
         exportTemplateTree = [templates copy];
@@ -298,7 +298,7 @@
         NSArray *templates = nil;
         NSData *prefData = [[NSUserDefaults standardUserDefaults] 
objectForKey:BDSKServiceTemplateTree];
         if ([prefData length])
-            templates = [NSKeyedUnarchiver unarchiveObjectWithData:prefData];
+            templates = [NSKeyedUnarchiver unarchivedObjectOfClasses:[NSSet 
setWithObjects:[NSArray class], [BDSKTreeNode class], nil] fromData:prefData 
error:NULL];
         if ([templates count] == 0)
             templates = [BDSKTemplate defaultServiceTemplates];
         serviceTemplateTree = [templates copy];
@@ -331,7 +331,7 @@
     if ([prefData length] == 0)
         return;
     
-    NSArray *templates = [NSKeyedUnarchiver unarchiveObjectWithData:prefData];
+    NSArray *templates = [NSKeyedUnarchiver unarchivedObjectOfClasses:[NSSet 
setWithObjects:[NSArray class], [BDSKTreeNode class], nil] fromData:prefData 
error:NULL];
     NSString *defaultName = [self defaultPreviewTemplateName];
     NSSet *defaultNames = [NSSet setWithObjects:NSLocalizedString(@"Default 
RTF template", @"template name"), NSLocalizedString(@"Default RTFD template", 
@"template name"), NSLocalizedString(@"Default HTML template", @"template 
name"), NSLocalizedString(@"Default RSS template", @"template name"), 
NSLocalizedString(@"Default Doc template", @"template name"), nil];
     __block NSUInteger idx = 0;

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