diff options
Diffstat (limited to 'nt/runemacs.c')
-rw-r--r-- | nt/runemacs.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/nt/runemacs.c b/nt/runemacs.c index 905ef30a5d..86644b4dfe 100644 --- a/nt/runemacs.c +++ b/nt/runemacs.c @@ -59,7 +59,7 @@ WinMain (HINSTANCE hSelf, HINSTANCE hPrev, LPSTR cmdline, int nShow) char *new_cmdline; char *p; char modname[MAX_PATH]; - static const char iconic_opt[] = "--iconic "; + static const char iconic_opt[] = "--iconic ", maximized_opt[] = "--maximized "; if (!ensure_unicows_dll ()) goto error; @@ -74,7 +74,10 @@ WinMain (HINSTANCE hSelf, HINSTANCE hPrev, LPSTR cmdline, int nShow) new_cmdline = alloca (MAX_PATH + strlen (cmdline) - + (nShow == SW_SHOWMINNOACTIVE) * strlen (iconic_opt) + + ((nShow == SW_SHOWMINNOACTIVE + || nShow == SW_SHOWMAXIMIZED) + ? max (sizeof (iconic_opt), sizeof (maximized_opt)) + : 0) + 3); /* Quote executable name in case of spaces in the path. */ *new_cmdline = '"'; @@ -146,9 +149,12 @@ WinMain (HINSTANCE hSelf, HINSTANCE hPrev, LPSTR cmdline, int nShow) /* If the desktop shortcut properties tell to invoke runemacs minimized, or if they invoked runemacs via "start /min", pass - '--iconic' to Emacs, as that's what users will expect. */ + '--iconic' to Emacs, as that's what users will expect. Likewise + with invoking runemacs maximized: pass '--maximized' to Emacs. */ if (nShow == SW_SHOWMINNOACTIVE) strcat (new_cmdline, iconic_opt); + else if (nShow == SW_SHOWMAXIMIZED) + strcat (new_cmdline, maximized_opt); strcat (new_cmdline, cmdline); /* Set emacs_dir variable if runemacs was in "%emacs_dir%\bin". */ |