From 9f3b801c2241cc190c95a22df980a31f00a1793b Mon Sep 17 00:00:00 2001 From: rdb Date: Fri, 24 Jul 2009 09:02:35 +0000 Subject: [PATCH] Whoops --- dtool/src/dtoolutil/executionEnvironment.cxx | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/dtool/src/dtoolutil/executionEnvironment.cxx b/dtool/src/dtoolutil/executionEnvironment.cxx index 03dd22146d..3831fadce2 100644 --- a/dtool/src/dtoolutil/executionEnvironment.cxx +++ b/dtool/src/dtoolutil/executionEnvironment.cxx @@ -214,14 +214,17 @@ ns_get_environment_variable(const string &var) const { } else if (var == "MAIN_DIR") { #ifdef HAVE_PYTHON // If we're running from Python code, read out sys.argv. - if (Py_IsInitialized() && PyObject* obj = PySys_GetObject((char*) "argv")) { - Filename main_dir (PyString_AsString(PyList_GetItem(obj, 0))); - if (main_dir.empty()) { - // We must be running in the Python interpreter directly, so return the CWD. - return get_cwd(); + if (Py_IsInitialized()) { + PyObject* obj = PySys_GetObject((char*) "argv"); + if (obj) { + Filename main_dir (PyString_AsString(PyList_GetItem(obj, 0))); + if (main_dir.empty()) { + // We must be running in the Python interpreter directly, so return the CWD. + return get_cwd(); + } + main_dir.make_absolute(); + return Filename(main_dir.get_dirname()).to_os_specific(); } - main_dir.make_absolute(); - return Filename(main_dir.get_dirname()).to_os_specific(); } #endif