summaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorJuan Linietsky <reduzio@gmail.com>2014-06-29 23:24:05 -0300
committerJuan Linietsky <reduzio@gmail.com>2014-06-29 23:24:05 -0300
commit7bb5693094b0c624d761cf2044258ea5a21fff4d (patch)
treecc465fe54525d6ffff6ecb45804db6abef09a4f0 /core
parent01632a824ee7e2326aa90b32d75c2fe09f61a37e (diff)
hoh# On branch master
Diffstat (limited to 'core')
-rw-r--r--core/bind/core_bind.cpp6
-rw-r--r--core/bind/core_bind.h3
2 files changed, 6 insertions, 3 deletions
diff --git a/core/bind/core_bind.cpp b/core/bind/core_bind.cpp
index 4f5358591a..64b31d6fdd 100644
--- a/core/bind/core_bind.cpp
+++ b/core/bind/core_bind.cpp
@@ -235,7 +235,7 @@ Error _OS::shell_open(String p_uri) {
};
-int _OS::execute(const String& p_path, const Vector<String> & p_arguments,bool p_blocking) {
+int _OS::execute(const String& p_path, const Vector<String> & p_arguments, bool p_blocking, Array p_output) {
OS::ProcessID pid;
List<String> args;
@@ -243,6 +243,8 @@ int _OS::execute(const String& p_path, const Vector<String> & p_arguments,bool p
args.push_back(p_arguments[i]);
String pipe;
Error err = OS::get_singleton()->execute(p_path,args,p_blocking,&pid, &pipe);
+ p_output.clear();
+ p_output.push_back(pipe);
if (err != OK)
return -1;
else
@@ -616,7 +618,7 @@ void _OS::_bind_methods() {
ObjectTypeDB::bind_method(_MD("get_processor_count"),&_OS::get_processor_count);
ObjectTypeDB::bind_method(_MD("get_executable_path"),&_OS::get_executable_path);
- ObjectTypeDB::bind_method(_MD("execute","path","arguments","blocking"),&_OS::execute);
+ ObjectTypeDB::bind_method(_MD("execute","path","arguments","blocking","output"),&_OS::execute,DEFVAL(Array()));
ObjectTypeDB::bind_method(_MD("kill","pid"),&_OS::kill);
ObjectTypeDB::bind_method(_MD("shell_open","uri"),&_OS::shell_open);
ObjectTypeDB::bind_method(_MD("get_process_ID"),&_OS::get_process_ID);
diff --git a/core/bind/core_bind.h b/core/bind/core_bind.h
index 02fe3e8874..20a33fa013 100644
--- a/core/bind/core_bind.h
+++ b/core/bind/core_bind.h
@@ -123,7 +123,8 @@ public:
bool is_in_low_processor_usage_mode() const;
String get_executable_path() const;
- int execute(const String& p_path, const Vector<String> & p_arguments,bool p_blocking);
+ int execute(const String& p_path, const Vector<String> & p_arguments,bool p_blocking,Array p_output=Array());
+
Error kill(int p_pid);
Error shell_open(String p_uri);