summaryrefslogtreecommitdiffstats
path: root/src/os_w32exe.c
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 08:50:31 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 08:50:31 +0000
commitaed8ce9da277f5ecffe968b324f242c41c3b752a (patch)
treed2e538394cb7a8a7c42a4aac6ccf1a8e3256999b /src/os_w32exe.c
parentInitial commit. (diff)
downloadvim-aed8ce9da277f5ecffe968b324f242c41c3b752a.tar.xz
vim-aed8ce9da277f5ecffe968b324f242c41c3b752a.zip
Adding upstream version 2:9.0.1378.upstream/2%9.0.1378upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/os_w32exe.c')
-rw-r--r--src/os_w32exe.c51
1 files changed, 51 insertions, 0 deletions
diff --git a/src/os_w32exe.c b/src/os_w32exe.c
new file mode 100644
index 0000000..c4f0294
--- /dev/null
+++ b/src/os_w32exe.c
@@ -0,0 +1,51 @@
+/* vi:set ts=8 sts=4 sw=4 noet:
+ *
+ * VIM - Vi IMproved by Bram Moolenaar
+ * GUI support by Robert Webb
+ *
+ * Do ":help uganda" in Vim to read copying and usage conditions.
+ * Do ":help credits" in Vim to see a list of people who contributed.
+ * See README.txt for an overview of the Vim source code.
+ */
+/*
+ * Windows GUI: main program (EXE) entry point:
+ *
+ * Ron Aaron <ronaharon@yahoo.com> wrote this and the (now deleted) DLL support
+ * code.
+ */
+#include "vim.h"
+
+// cproto doesn't create a prototype for VimMain()
+#ifdef VIMDLL
+__declspec(dllimport)
+#endif
+int VimMain(int argc, char **argv);
+#ifndef VIMDLL
+void SaveInst(HINSTANCE hInst);
+#endif
+
+#ifndef PROTO
+# ifdef FEAT_GUI
+ int WINAPI
+wWinMain(
+ HINSTANCE hInstance,
+ HINSTANCE hPrevInst UNUSED,
+ LPWSTR lpszCmdLine UNUSED,
+ int nCmdShow UNUSED)
+# else
+ int
+wmain(int argc UNUSED, wchar_t **argv UNUSED)
+# endif
+{
+# ifndef VIMDLL
+# ifdef FEAT_GUI
+ SaveInst(hInstance);
+# else
+ SaveInst(GetModuleHandleW(NULL));
+# endif
+# endif
+ VimMain(0, NULL);
+
+ return 0;
+}
+#endif