• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
NSAppleScript crash on executeAndReturnError
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

NSAppleScript crash on executeAndReturnError


  • Subject: NSAppleScript crash on executeAndReturnError
  • From: "James J. Merkel" <email@hidden>
  • Date: Sun, 28 Nov 2004 12:58:14 -0800

I have playing with a method to get the comment from the Finder's Get Info window as follows:

-(void)checkFinderCommentsForFile:theFile{
/* Need to use Applescript to read or write Finder Get Info Comments */

/* Convert POSIX path string to hfs path string */
NSURL * urlWithPOSIXPath = [NSURL fileURLWithPath:theFile];
NSString * hfsStylePathString = (NSString *)CFURLCopyFileSystemPath((CFURLRef)urlWithPOSIXPath, kCFURLHFSPathStyle);


NSString *appleScriptString = @"tell application \"Finder\"\r get comment of file ";
appleScriptString = [appleScriptString stringByAppendingString:@"\""];
appleScriptString = [appleScriptString stringByAppendingString:hfsStylePathString];
appleScriptString = [appleScriptString stringByAppendingString:@"\""];
appleScriptString = [appleScriptString stringByAppendingString:@"\r end tell\r"];


NSLog(appleScriptString);

NSString *finderComment;

NSAppleScript *theScript = [[NSAppleScript alloc] initWithSource:appleScriptString];

NSDictionary *theError = [[NSDictionary alloc] init];

finderComment = [[theScript executeAndReturnError: &theError] stringValue];
NSLog(@"Finder comment is %@.\n", finderComment);


NSLog([theError description]);

[theScript release];
[theError release];
}

This works fine provided the file in the line:
appleScriptString = [appleScriptString stringByAppendingString:hfsStylePathString];
is a valid path.


However if I comment out the above line to simulate a null file name, I get the errors:
NSAppleScriptErrorBriefMessage = "Can't get comment of file \"\".";
NSAppleScriptErrorMessage = "Finder got an error: Can't get comment of file \"\".";
NSAppleScriptErrorNumber = -1728;
NSAppleScriptErrorRange = <0000001f 00000007 >;


which I would expect, but the application also (sometimes) crashes.
I would have expected that, since an error was detected, a crash would not occur.
Is this a bug in NSAppleScript. or am I doing something else wrong?


TIA,
Jim Merkel

_______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


  • Follow-Ups:
    • Re: NSAppleScript crash on executeAndReturnError
      • From: Nick Zitzmann <email@hidden>
    • Re: NSAppleScript crash on executeAndReturnError
      • From: Charles Srstka <email@hidden>
  • Prev by Date: Re: Using Keychain for storing archived object ?
  • Next by Date: Re: NSAppleScript crash on executeAndReturnError
  • Previous by thread: Re: Encoding a pointer to an object, not the object itself
  • Next by thread: Re: NSAppleScript crash on executeAndReturnError
  • Index(es):
    • Date
    • Thread