From: <bi...@us...> - 2009-05-14 21:25:39
|
Revision: 4676 http://oorexx.svn.sourceforge.net/oorexx/?rev=4676&view=rev Author: bigrixx Date: 2009-05-14 21:25:30 +0000 (Thu, 14 May 2009) Log Message: ----------- CallProgram() API was not performing path and extension resolution Modified Paths: -------------- main/trunk/interpreter/concurrency/RexxStartDispatcher.cpp Modified: main/trunk/interpreter/concurrency/RexxStartDispatcher.cpp =================================================================== --- main/trunk/interpreter/concurrency/RexxStartDispatcher.cpp 2009-05-14 18:32:45 UTC (rev 4675) +++ main/trunk/interpreter/concurrency/RexxStartDispatcher.cpp 2009-05-14 21:25:30 UTC (rev 4676) @@ -209,12 +209,18 @@ void CallProgramDispatcher::run() { RexxString *name = new_string(program); + /* go resolve the name */ + name = activity->resolveProgramName(name, OREF_NULL, OREF_NULL); + if (name == OREF_NULL) /* not found? */ + { + /* got an error here */ + reportException(Error_Program_unreadable_notfound, name); + } + ProtectedObject p(name); + // create a routine from this file + RoutineClass *routine = RoutineClass::fromFile(name); + p = routine; - // get a routine from the file source first - RoutineClass *routine = new RoutineClass(name); - - ProtectedObject p(routine); - if (arguments != OREF_NULL) { // use the provided name for the call name This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |