Browse Source

Merge pull request #34680 from Calinou/editor-export-nonzero-exit-code-error

Exit the editor export process with a non-zero exit code on error
Rémi Verschelde 5 years ago
parent
commit
86a732b136
1 changed files with 4 additions and 0 deletions
  1. 4 0
      editor/editor_node.cpp

+ 4 - 0
editor/editor_node.cpp

@@ -171,6 +171,7 @@
 #include "editor/settings_config_dialog.h"
 
 #include <stdio.h>
+#include <stdlib.h>
 
 EditorNode *EditorNode::singleton = NULL;
 
@@ -573,11 +574,13 @@ void EditorNode::_fs_changed() {
 		if (preset.is_null()) {
 			String errstr = "Unknown export preset: " + export_defer.preset;
 			ERR_PRINTS(errstr);
+			OS::get_singleton()->set_exit_code(EXIT_FAILURE);
 		} else {
 			Ref<EditorExportPlatform> platform = preset->get_platform();
 			if (platform.is_null()) {
 				String errstr = "Preset \"" + export_defer.preset + "\" doesn't have a platform.";
 				ERR_PRINTS(errstr);
+				OS::get_singleton()->set_exit_code(EXIT_FAILURE);
 			} else {
 				// ensures export_project does not loop infinitely, because notifications may
 				// come during the export
@@ -594,6 +597,7 @@ void EditorNode::_fs_changed() {
 				}
 				if (err != OK) {
 					ERR_PRINTS(vformat(TTR("Project export failed with error code %d."), (int)err));
+					OS::get_singleton()->set_exit_code(EXIT_FAILURE);
 				}
 			}
 		}