After Effects callDeadlineCommand() fix

Hello,

I would recommand you to change the following functions into your jsx code :

[code]function callDeadlineCommand( args )
{
var commandLine = “”;
var oldCurrentFolder = Folder.current;
Folder.current = “c:\”;
//On OSX, we look for the DEADLINE_PATH file. On other platforms, we use the environment variable.
if (system.osName == “MacOS”)
{
var deadlinePathFile = File( “/Users/Shared/Thinkbox/DEADLINE_PATH” );
if( deadlinePathFile.exists )
{
deadlinePathFile.open( “r” );
deadlineBin = deadlinePathFile.read().replace( “\n”,"" ).replace( “\r”, “” );
deadlinePathFile.close();

			commandLine = "\"" + deadlineBin + "/deadlinecommand\" ";
		}
		else
			commandLine = "deadlinecommand ";
	}
	else
	{
		deadlineBin = system.callSystem( "cmd.exe /c \"echo %DEADLINE_PATH%\"" ).replace( "\n","" ).replace( "\r", "" );
		$.writeln("deadlineBin : " + deadlineBin);
		commandLine = "\"" + deadlineBin + "\\deadlinecommand.exe\" ";
	}
	
	commandLine = commandLine + args;
	
	result = system.callSystem(commandLine);
	
	if( system.osName == "MacOS" )
	{
		result = cleanUpResults( result, "Could not set X local modifiers" );
		result = cleanUpResults( result, "Could not find platform independent libraries" );
		result = cleanUpResults( result, "Could not find platform dependent libraries" );
		result = cleanUpResults( result, "Consider setting $PYTHONHOME to" );
		result = cleanUpResults( result, "using built-in colorscheme" );
	}
	
	//result = result.replace("\n", "");
	//result = result.replace("\r", "");
	Folder.current = oldCurrentFolder ;
	return result;
}[/code]

The reason is, if the Folder.current is a UNC path, cmd.exe will return a warning and your parsing won’t work anymore.

cheers

F.

Hello,

I have passed this along to our dev team to look over, and hope to have more information soon. Thank you for letting us know about this possible bug!

the function I did past, already have the modification which will make it work.

cheers,

F.

Thanks for this François! Always appreciated