24 lines
675 B
C++
24 lines
675 B
C++
#include <unistd.h>
|
|
#include <string.h>
|
|
#include <string>
|
|
|
|
using namespace std;
|
|
|
|
int main(int argc, char *argv[])
|
|
{
|
|
string program_name = argv[0];
|
|
size_t pos = program_name.find_last_of("/\\");
|
|
string script_path =
|
|
(pos != string::npos)
|
|
? program_name.substr(0, pos) + "/gvim-wrapper.py"
|
|
: "gvim-wrapper.py";
|
|
char **new_argv = new char *[argc + 2];
|
|
memcpy(&new_argv[2], &argv[1], argc * sizeof(new_argv[0]));
|
|
new_argv[0] = (char *)"pythonw.exe";
|
|
new_argv[1] = (char *)script_path.c_str();
|
|
new_argv[argc + 1] = NULL;
|
|
argv[0] = (char *)"gvim-wrapper.py";
|
|
execvp("pythonw.exe", new_argv);
|
|
return -1;
|
|
}
|