23 lines
643 B
C++
23 lines
643 B
C++
#include <unistd.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";
|
|
const char **new_argv = new const char *[argc + 2];
|
|
memcpy(&new_argv[2], &argv[1], argc * sizeof(new_argv[0]));
|
|
new_argv[0] = "pythonw.exe";
|
|
new_argv[1] = script_path.c_str();
|
|
new_argv[argc + 1] = NULL;
|
|
argv[0] = "gvim-wrapper.py";
|
|
execvp("pythonw.exe", new_argv);
|
|
return -1;
|
|
}
|