[ic] Usertag return value
Peter
peter at pajamian.dhs.org
Sat Feb 14 01:15:20 UTC 2009
On 02/13/2009 09:01 AM, Grant wrote:
>>>>>> $return= $image->Write(filename=>'/file/location/'.$name.'_image.jpg')
>>>>>> or return 0;
>>>>>> $Tag->log("1: return=$return error=$!");
>>>>>> $return= chmod(0644,"/file/location/".$name."_image.jpg") or return 0;
>>>>>> $Tag->log("2: return=$return error=$!");
>>>> Why not write it like this:
>>>>
>>>> return 0
>>>> if ! $image->Write(filename=>'/file/location/'.$name.'_image.jpg');
>>>>
>>>> return 0
>>>> if ! chmod(0644,"/file/location/".$name."_image.jpg");
>>> I tried this with the same results. The first 3 commands execute, the
>>> last 3 commands don't execute, and the usertag exits with '0'. If I
>>> remove:
>>>
>>> return 0
>>> if !
>>>
>>> everything executes, but I don't get the '0' in case of failure.
>> So, you want all commands to execute regardless and the tag to return 0
>> if any command fails?
>
> Thanks Peter, but what I'm after is processing to stop and a return
> value of 0 in case a command fails. The usertag executes all the way
> through unless I set it up to return 0 in case of failure, in which
> case processing stops halfway through. I'd also like any error info
> to be printed to the error.log because my app needs a 1 or 0 returned
> by the usertag.
Try this then:
command1 or do {
::logError "Error running command1: $!";
return 0;
}
command2 or do {
::logError "Error running command2: $!";
return 0;
}
...
commandn or do {
::logError "Error running commandn: $!";
return 0;
}
Peter
More information about the interchange-users
mailing list