diff options
-rw-r--r-- | indra/llcommon/llprocesslauncher.cpp | 2 | ||||
-rw-r--r-- | indra/llplugin/llpluginprocessparent.cpp | 1 |
2 files changed, 2 insertions, 1 deletions
diff --git a/indra/llcommon/llprocesslauncher.cpp b/indra/llcommon/llprocesslauncher.cpp index 4b0f6b0251..d46188104f 100644 --- a/indra/llcommon/llprocesslauncher.cpp +++ b/indra/llcommon/llprocesslauncher.cpp @@ -103,7 +103,7 @@ int LLProcessLauncher::launch(void) char *args2 = new char[args.size() + 1]; strcpy(args2, args.c_str()); - if( ! CreateProcessA( NULL, args2, NULL, NULL, FALSE, 0, NULL, NULL, &sinfo, &pinfo ) ) + if( ! CreateProcessA( NULL, args2, NULL, NULL, FALSE, 0, NULL, mWorkingDir.c_str(), &sinfo, &pinfo ) ) { // TODO: do better than returning the OS-specific error code on failure... result = GetLastError(); diff --git a/indra/llplugin/llpluginprocessparent.cpp b/indra/llplugin/llpluginprocessparent.cpp index db4b8b1316..315096d4fd 100644 --- a/indra/llplugin/llpluginprocessparent.cpp +++ b/indra/llplugin/llpluginprocessparent.cpp @@ -160,6 +160,7 @@ void LLPluginProcessParent::errorState(void) void LLPluginProcessParent::init(const std::string &launcher_filename, const std::string &plugin_dir, const std::string &plugin_filename, bool debug) { mProcess.setExecutable(launcher_filename); + mProcess.setWorkingDirectory(plugin_dir); mPluginFile = plugin_filename; mPluginDir = plugin_dir; mCPUUsage = 0.0f; |