*
* Full author contact details are available in file CREDITS.
*/
-
+
#import <Cocoa/Cocoa.h>
#include "AppleScript.h"
NSString * directParameter = [self directParameter];
NSString *arg = [theArguments objectForKey: @"arg"];
-
+
// Execute the command
LyXFunctionResult result = applescript_execute_command([directParameter UTF8String], [arg UTF8String]);
-
+
// Construct the result record
NSString *message = [NSString stringWithCString:result.message encoding:NSUTF8StringEncoding];
- free(result.message);
-
- NSDictionary *objcResult = [NSDictionary dictionaryWithObjectsAndKeys: [NSNumber numberWithInt:result.code], @"code", message, @"message", nil];
- return objcResult;
+ free(result.message);
+
+ if (result.code != 0) {
+ NSScriptCommand* c = [NSScriptCommand currentCommand];
+ [c setScriptErrorNumber:result.code];
+ [c setScriptErrorString:message];
+ return NULL;
+ }
+
+ return message;
}
@end