Revision: 11374
http://bibdesk.svn.sourceforge.net/bibdesk/?rev=11374&view=rev
Author: hofman
Date: 2007-10-24 07:26:49 -0700 (Wed, 24 Oct 2007)
Log Message:
-----------
Cannot pass NULL fsref to CFURL functions.
Modified Paths:
--------------
branches/TRY_ARM_FILE_INTERFACE/bibdesk/BDSKFile.m
Modified: branches/TRY_ARM_FILE_INTERFACE/bibdesk/BDSKFile.m
===================================================================
--- branches/TRY_ARM_FILE_INTERFACE/bibdesk/BDSKFile.m 2007-10-24 12:34:20 UTC
(rev 11373)
+++ branches/TRY_ARM_FILE_INTERFACE/bibdesk/BDSKFile.m 2007-10-24 14:26:49 UTC
(rev 11374)
@@ -510,11 +510,14 @@
- (NSURL *)fileURLRelativeToURL:(NSURL *)baseURL;
{
BOOL hadFileRef = fileRef != NULL;
- NSURL *aURL = [(id)CFURLCreateFromFSRef(CFAllocatorGetDefault(), [self
fsRefRelativeToURL:baseURL]) autorelease];
+ const FSRef *aRef = [self fsRefRelativeToURL:baseURL];
+ NSURL *aURL = aRef == NULL ? nil :
[(id)CFURLCreateFromFSRef(CFAllocatorGetDefault(), aRef) autorelease];
if (aURL == nil && hadFileRef) {
NSZoneFree([self zone], (void *)fileRef);
fileRef = NULL;
- aURL = [(id)CFURLCreateFromFSRef(CFAllocatorGetDefault(), [self
fsRefRelativeToURL:baseURL]) autorelease];
+ aRef = [self fsRefRelativeToURL:baseURL];
+ if (aRef != NULL)
+ aURL = [(id)CFURLCreateFromFSRef(CFAllocatorGetDefault(), aRef)
autorelease];
}
return aURL;
}
@@ -522,11 +525,14 @@
- (NSURL *)fileURLRelativeToURLNoUpdate:(NSURL *)baseURL;
{
BOOL hadFileRef = fileRef != NULL;
- NSURL *aURL = [(id)CFURLCreateFromFSRef(CFAllocatorGetDefault(), [self
fsRefRelativeToURL:baseURL update:NO]) autorelease];
+ const FSRef *aRef = [self fsRefRelativeToURL:baseURL update:NO];
+ NSURL *aURL = aRef == NULL ? nil :
[(id)CFURLCreateFromFSRef(CFAllocatorGetDefault(), aRef) autorelease];
if (aURL == nil && hadFileRef) {
NSZoneFree([self zone], (void *)fileRef);
fileRef = NULL;
- aURL = [(id)CFURLCreateFromFSRef(CFAllocatorGetDefault(), [self
fsRefRelativeToURL:baseURL update:NO]) autorelease];
+ aRef = [self fsRefRelativeToURL:baseURL update:NO];
+ if (aRef != NULL)
+ aURL = [(id)CFURLCreateFromFSRef(CFAllocatorGetDefault(), aRef)
autorelease];
}
return aURL;
}
@@ -562,7 +568,7 @@
// make sure the fileRef is valid
[self fileURLRelativeToURLNoUpdate:[NSURL fileURLWithPath:basePath]];
- const FSRef *fsRef = [self fsRefRelativeToURL:[NSURL
fileURLWithPath:basePath] update:NO];
+ FSRef *fsRef = (FSRef *)[self fsRefRelativeToURL:[NSURL
fileURLWithPath:basePath] update:NO];
FSRef baseRef, tempRef = *fsRef;
NSURL *baseURL;
BDAlias *anAlias = nil;
@@ -570,9 +576,9 @@
if (fsRef) {
baseURL = [NSURL fileURLWithPath:basePath];
if (baseURL && CFURLGetFSRef((CFURLRef)baseURL, &baseRef))
- anAlias = [[[BDAlias alloc] initWithFSRef:&tempRef
relativeToFSRef:&baseRef] autorelease];
+ anAlias = [[[BDAlias alloc] initWithFSRef:fsRef
relativeToFSRef:&baseRef] autorelease];
else
- anAlias = [[[BDAlias alloc] initWithFSRef:&tempRef] autorelease];
+ anAlias = [[[BDAlias alloc] initWithFSRef:fsRef] autorelease];
} else {
anAlias = alias;
}
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Bibdesk-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bibdesk-commit