浏览代码

Check getcwd return in X11 platform main.

Fabio Alessandrelli 7 年之前
父节点
当前提交
f8020bc976
共有 1 个文件被更改,包括 3 次插入2 次删除
  1. 3 2
      platform/x11/godot_x11.cpp

+ 3 - 2
platform/x11/godot_x11.cpp

@@ -43,7 +43,7 @@ int main(int argc, char *argv[]) {
 	setlocale(LC_CTYPE, "");
 	setlocale(LC_CTYPE, "");
 
 
 	char *cwd = (char *)malloc(PATH_MAX);
 	char *cwd = (char *)malloc(PATH_MAX);
-	getcwd(cwd, PATH_MAX);
+	char *ret = getcwd(cwd, PATH_MAX);
 
 
 	Error err = Main::setup(argv[0], argc - 1, &argv[1]);
 	Error err = Main::setup(argv[0], argc - 1, &argv[1]);
 	if (err != OK) {
 	if (err != OK) {
@@ -55,7 +55,8 @@ int main(int argc, char *argv[]) {
 		os.run(); // it is actually the OS that decides how to run
 		os.run(); // it is actually the OS that decides how to run
 	Main::cleanup();
 	Main::cleanup();
 
 
-	chdir(cwd);
+	if (ret)
+		chdir(cwd);
 	free(cwd);
 	free(cwd);
 
 
 	return os.get_exit_code();
 	return os.get_exit_code();