Bug #6676
closedExternal Execution actors generates exception for empty directory
Description
If the directory parameter is empty for the External Execution actor, a NullPointerException is generated:
java.lang.NullPointerException
at ptolemy.actor.lib.Exec._exec(Exec.java:516)
at ptolemy.actor.lib.Exec.fire(Exec.java:337)
at ptolemy.actor.AtomicActor.iterate(AtomicActor.java:496)
It would be better to default to user.dir or throw an exception saying directory must be specified.
Updated by Christopher Brooks almost 10 years ago
- % Done changed from 0 to 90
This is fixed.
ptolemy.actor.lib.Exec invokes java.lang.Runtime.exec(), which takes as its last argument the directory. The Javadoc for Runtime.exec() state that if the directory is null, then the current directory of the parent process is used.
I fixed up Exec.java to handle the directory being the empty string, which means that a null gets passed to Runtime.exec().
I updated the documentation for the class and changed ptolemy/actor/lib/test/auto/Exec.xml so that the directory parameter is the empty string, which tickles this bug.
This bug may be closed after someone else confirms that it is fixed.
Updated by Daniel Crawl almost 10 years ago
- Status changed from New to Resolved
- % Done changed from 90 to 100
I verified it's fixed. Thanks, Christopher.