summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorge Marques <george@gmarqu.es>2016-04-29 13:57:57 -0300
committerGeorge Marques <george@gmarqu.es>2016-04-29 13:57:57 -0300
commit2cd8e86aa016fe8c61a48889529aa81284f6d889 (patch)
tree9e6c75d2399e264f3f0c72092ad5dfa9c51f8cce
parent18c09acf9fd040644515a4ae2f56d38517d71825 (diff)
Implement OS.get_process_ID for Windows
Based on code by @ratsdiov. Closes #1733
-rw-r--r--platform/windows/os_windows.cpp5
-rw-r--r--platform/windows/os_windows.h1
2 files changed, 6 insertions, 0 deletions
diff --git a/platform/windows/os_windows.cpp b/platform/windows/os_windows.cpp
index 9def8d4f9c..d0453f0d8e 100644
--- a/platform/windows/os_windows.cpp
+++ b/platform/windows/os_windows.cpp
@@ -55,6 +55,7 @@
#include "shlobj.h"
#include <regstr.h>
+#include <process.h>
static const WORD MAX_CONSOLE_LINES = 1500;
@@ -1884,6 +1885,10 @@ Error OS_Windows::kill(const ProcessID& p_pid) {
return ret != 0?OK:FAILED;
};
+int OS_Windows::get_process_ID() const {
+ return _getpid();
+}
+
Error OS_Windows::set_cwd(const String& p_cwd) {
if (_wchdir(p_cwd.c_str())!=0)
diff --git a/platform/windows/os_windows.h b/platform/windows/os_windows.h
index 3116847daa..81cf313849 100644
--- a/platform/windows/os_windows.h
+++ b/platform/windows/os_windows.h
@@ -245,6 +245,7 @@ public:
virtual Error execute(const String& p_path, const List<String>& p_arguments,bool p_blocking,ProcessID *r_child_id=NULL,String* r_pipe=NULL,int *r_exitcode=NULL);
virtual Error kill(const ProcessID& p_pid);
+ virtual int get_process_ID() const;
virtual bool has_environment(const String& p_var) const;
virtual String get_environment(const String& p_var) const;