diff --git a/subsystems/ntvdm/dos.c b/subsystems/ntvdm/dos.c index 86d5e3d0c2a..8ff155769aa 100644 --- a/subsystems/ntvdm/dos.c +++ b/subsystems/ntvdm/dos.c @@ -864,7 +864,7 @@ VOID DosInitializePsp(WORD PspSegment, LPCSTR CommandLine, WORD ProgramSize, WOR PspBlock->FarCall[2] = 0xCB; // retf /* Set the command line */ - PspBlock->CommandLineSize = (BYTE)min(strlen(CommandLine), DOS_CMDLINE_LENGTH); + PspBlock->CommandLineSize = (BYTE)min(strlen(CommandLine), DOS_CMDLINE_LENGTH - 1); RtlCopyMemory(PspBlock->CommandLine, CommandLine, PspBlock->CommandLineSize); PspBlock->CommandLine[PspBlock->CommandLineSize] = '\r'; } @@ -875,7 +875,7 @@ BOOLEAN DosCreateProcess(LPCSTR CommandLine, WORD EnvBlock) HANDLE FileHandle = INVALID_HANDLE_VALUE, FileMapping = NULL; LPBYTE Address = NULL; LPSTR ProgramFilePath, Parameters[256]; - CHAR CommandLineCopy[MAX_PATH]; + CHAR CommandLineCopy[DOS_CMDLINE_LENGTH]; INT ParamCount = 0; WORD Segment = 0; WORD MaxAllocSize; diff --git a/subsystems/ntvdm/ntvdm.c b/subsystems/ntvdm/ntvdm.c index bbb44d4bd4f..72123098c70 100644 --- a/subsystems/ntvdm/ntvdm.c +++ b/subsystems/ntvdm/ntvdm.c @@ -77,7 +77,7 @@ BOOL WINAPI ConsoleCtrlHandler(DWORD ControlType) INT wmain(INT argc, WCHAR *argv[]) { INT i; - CHAR CommandLine[MAX_PATH]; + CHAR CommandLine[DOS_CMDLINE_LENGTH]; DWORD CurrentTickCount; DWORD LastTickCount = GetTickCount(); DWORD Cycles = 0;