» home
» bugs
» git

Viewing Issue Simple Details Jump to Notes ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0000025 [litestep core] core feature N/A 2007-06-28 10:00 2009-01-16 16:20
Reporter phil View Status public  
Assigned To
Priority none Resolution open  
Status feedback   Product Version 0.24.7
Summary 0000025: ExecuteAndWait support
Description Maduin implemented this some time ago in our LDE(X) LS branch. I've only just located the change :

http://omni.terica.net/omniscience/changeset/470 [^]
Additional Information The intention behind this change was to sidestep the endemic timing issues that LiteStep has when running external processes. We see this a lot with scripts called from LS (e.g. WSH support structures, or AutoIT dialog integration) where we have basically to put LS into a tight mzScript loop and watch for a return variable being created. If we don't do this, many bad things happen as values are not available, or support structures are invalid because we get a race condition between LS and the external process(es)

The loop-lock approach works, usually, but has the limitation that mzScript is required. Reliability in this situation is also not particularly enviable; if the external process quits with an error, the tight lock is not ended and the user is required to terminate LS with prejudice.

Maduin's approach was taken some time ago and I confess to having asked for it and then not made use of it. Nonetheless, I think it would be a worthy thing to have in mainline, if only to allow others to avoid the heavy workarounds that LDE(X) implemented.

Since we have not used this approach in LDE(X), reliability and correctness is not known.
Tags No tags attached.
Attached Files

- Relationships

-  Notes
(0000058)
jugg (manager)
2007-07-07 13:46

Thanks. Since it is just a !bang command any module could implement this.

However, if we implement it in the core, we should also expose it via API, so modules can directly make use of it as well. (example: !execute is a wrapper around LSExecute)

- Issue History
Date Modified Username Field Change
2007-06-28 10:00 phil New Issue
2007-07-07 13:46 jugg Note Added: 0000058
2007-07-07 13:46 jugg Status @10@ => @30@
2009-01-16 16:20 ilmcuts Status @30@ => feedback


Copyright © 2000 - 2009 Mantis Group
Powered by Mantis Bugtracker