if (nsAppleSingleDecoder::IsAppleSingleFile(&param))
FSpGetDirectoryID(&param, &dummy, &isDir);   if (isDir)
DecodeEvent(AppleEvent *appEvent, AppleEvent *reply, SInt32 handlerRefCon){	OSErr	err = noErr;	FSSpec	param, outFile;	Boolean	result = false;	AEDesc	fileDesc;		// extract FSSpec from params	err = AEGetParamDesc(appEvent, keyDirectObject, typeFSS, &fileDesc);	if (err != noErr)		goto reply;	BlockMoveData(*fileDesc.dataHandle, &param, sizeof(FSSpec));		// param check	err = nsASEApp::GotRequiredParams(appEvent);	if (err != noErr)		goto reply;			// check if given file is in AS format (takes care of existence check)	if (nsAppleSingleDecoder::IsAppleSingleFile(&param))	{		// decode given file		nsAppleSingleDecoder decoder;		err = decoder.Decode(&param, &outFile);	}	else		err = -1; // so that result boolean is set to false		// if noErr thus far 	if (err == noErr)	{		// then set result to true		result = true;	}	reply:	// package reply	AEPutParamPtr(reply, keyDirectObject, typeBoolean, &result, sizeof(result));		// set err to noErr -- boolean takes care of failures	err = noErr;		return err;}