Commit Graph

3672 Commits

Author SHA1 Message Date
Jacek Caban ccaaf6957f kernelbase: Close PEB ConsoleHandle in FreeConsole.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-13 21:12:22 +02:00
Jacek Caban cd8971399e kernel32/tests: Add console title tests.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-12 22:14:04 +02:00
Jacek Caban 5a6341d8c7 kernel32/tests: Add an option to test current console.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-12 22:14:02 +02:00
Jacek Caban 3d4be8e150 kernel32/tests: Disable ENABLE_VIRTUAL_TERMINAL_PROCESSING mode in testWriteNotWrappedProcessed.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-12 22:14:00 +02:00
Jacek Caban dc80851425 kernel32/tests: Fix ReadConsoleOutputW tests on Windows 8.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-12 22:13:58 +02:00
Vladimir Panteleev 7943a9c8fa kernel32/tests: Add more GetEnvironmentVariableA/W tests.
Signed-off-by: Vladimir Panteleev <git@vladimir.panteleev.md>
Signed-off-by: Gijs Vermeulen <gijsvrm@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-10 21:26:57 +02:00
Serge Gautherie 99c0ab2ea1 winapi_test: Restore horizontal alignment of macro defines.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-10 21:26:15 +02:00
Jacek Caban 9b7311e709 kernelbase: Add pseudoconsole stubs.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-10 16:41:58 +02:00
Jacek Caban a09a268fae kernel32/tests: Add more AllocConsole tests.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-30 21:41:47 +02:00
Jacek Caban 1e5cd8fadc kernel32/tests: Add more console output reading tests.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-28 19:31:56 +02:00
Jacek Caban 7a31d40139 condrv: Rename condrv_write_output_params to condrv_output_params.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-28 19:31:17 +02:00
Zebediah Figura 8acf35b154 kernel32/tests: Relax a timing test.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-27 23:28:16 +02:00
Jacek Caban 716bdfcbfa kernel32/tests: Add more console output tests.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-23 22:30:49 +02:00
Jacek Caban 98bee7881a kernel32: Use IOCTL_CONDRV_WRITE_OUTPUT in CONSOLE_WriteChars.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-23 22:30:49 +02:00
Paul Gofman 3d54677586 kernel32: Zero initialize module data in fetch_module().
Otherwise unitialized name string pointers may be freed
in CreateToolhelp32Snapshot().

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49590
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-22 22:16:05 +02:00
Jacek Caban e613d81d81 kernelbase: Use NtCreateFile in CreateConsoleScreenBuffer.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-21 15:18:44 +02:00
Alex Henrie f189bd4ba8 kernel32: Stub SetFirmwareEnvironmentVariableW.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49581
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-20 20:19:00 +02:00
Francois Gouget 500131b2f5 kernel32: FILE_SetDosError() is not used anymore so remove it.
The last user, RemoveDirectoryA/W(), has been moved to kernelbase.

Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 23:16:51 +02:00
Zebediah Figura 4ea4289253 kernel32/tests: Add tests for profile registry mapping.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-15 22:55:44 +02:00
Zebediah Figura 6e9d3d2014 kernel32: Implement deleting mapped sections.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-15 22:55:44 +02:00
Zebediah Figura d2b83336c7 kernel32: Implement registry mapping in WritePrivateProfileSection().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-15 22:55:44 +02:00
Zebediah Figura 3c1ebfdf82 kernel32: Implement registry mapping in GetPrivateProfileSectionNames().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-15 22:55:44 +02:00
Zebediah Figura 9ed6d24ed8 kernel32: Implement retrieving mapped sections.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-15 22:55:44 +02:00
Zebediah Figura 73fc0a18a6 kernel32: Implement registry mapping in WritePrivateProfileStringW().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-15 22:55:44 +02:00
Zebediah Figura 7c4f2d5342 kernel32: Implement registry mapping in GetPrivateProfileStringW().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=4096
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-15 22:55:44 +02:00
Alexandre Julliard 704d0662be ntdll: Fix RtlSizeHeap() error value for 64-bit.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-15 16:33:02 +02:00
Jacek Caban dce5b9add1 kernel32: Use IOCTL_CONDRV_FILL_OUTPUT in CONSOLE_FillLineUniform.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-14 18:27:59 +02:00
Jacek Caban f5badeac28 kernel32: Use IOCTL_CONDRV_GET_MODE in VerifyConsoleIoHandle.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-13 21:22:13 +02:00
Jacek Caban 48a23dbd43 kernelbase: Use IOCTL_CONDRV_GET_MODE in GetConsoleMode.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-13 21:22:13 +02:00
Zebediah Figura 39f59eb020 kernel32/tests: Avoid testing that WaitCommEvent() doesn't return immediately.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-10 13:19:27 +02:00
Jacek Caban 2789787f01 kernel32: Use IOCT_CONDRV_GET_OUTPUT_INFO in GetCurrentConsoleFontEx.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-09 19:41:59 +02:00
Jacek Caban 0c3c89b74d kernel32: Use IOCTL_CONDRV_GET_OUTPUT_INFO in get_console_font_size.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-09 19:41:58 +02:00
Jacek Caban eeb1f2b0f0 kernel32/tests: Add more invalid handle tests.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-09 19:41:50 +02:00
Alexandre Julliard 6f862a1ad8 ntdll: Allocate the buffer in the caller for wine_unix_to_nt_file_name().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-09 15:34:00 +02:00
Alexandre Julliard 368e3a93b8 ntdll: Allocate the return buffer in the caller for wine_nt_to_unix_file_name().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-09 13:04:05 +02:00
Alexandre Julliard 49fcd632e4 ntdll: Disallow relative paths in wine_unix_to_nt_file_name(), handle them in the caller.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-08 16:05:49 +02:00
Alexandre Julliard f8699c0a71 kernel32: Move RemoveDirectoryA/W() implementation to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-08 16:05:26 +02:00
Paul Gofman 8898a69519 ntdll: Use case sensitive search for \??\unix file names only.
Fixes crash on start in Planet Zoo and Jurassic World Evolution.

Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-07 19:40:28 +02:00
Jacek Caban d04baa29e2 kernel32: Use IOCTL_CONDRV_GET_INPUT_INFO in CONSOLE_GetEditionMode.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-07 19:24:27 +02:00
Myah Caron f2a804b9ea msvcrt: Don't reset MXCSR status in __control87_2 if control information is not changed.
Signed-off-by: Myah Caron <qsniyg@protonmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-07 19:24:27 +02:00
Zebediah Figura 7ee7953c54 kernel32/tests: Call NtQuerySystemInformation(SystemProcessInformation) until it returns STATUS_SUCCESS.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-07 13:10:13 +02:00
Jacek Caban 25f7aa52ad kernel32: Use IOCTL_CONDRV_READ_INPUT in read_console_input.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-06 21:13:09 +02:00
Rémi Bernon ceeb11d2a6 kernel32: Catch process creation breakpoint exceptions.
Metal Gear Solid V: Ground Zeroes attaches itself and continues this
specific breakpoint with DBG_EXCEPTION_NOT_HANDLED. It crashes the
child process and the game terminates.

It is correct for old Windows versions, but more recent versions are
apparently catching exceptions here, and the process should continue.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=44127
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-03 11:58:05 +02:00
Jacek Caban 2175c7c25e kernel32: Move AllocConsole to kernelbase.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-01 20:33:07 +02:00
Jacek Caban e43f51640a kernel32: Return standard input handle in GetConsoleInputWaitHandle.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-01 20:33:07 +02:00
Jacek Caban 99e6bab3ed kernel32: Import FreeConsole from kernelbase.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-01 20:33:07 +02:00
Alexandre Julliard 8a169390c9 ntdll: Build with msvcrt.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-30 12:25:08 +02:00
Alexandre Julliard 64731a8e9f ntdll: Fix a few more thread information access rights.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-30 11:05:53 +02:00
Dmitry Timoshkov c70a303cd4 kernel32: Implement IsWow64Process2.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-30 11:05:53 +02:00
Dmitry Timoshkov 51ff9aa7cc kernel32/tests: Fix compilation with PSDK.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-30 09:15:46 +02:00
Changping Yu 59ce4e3eb8 kernel32: Adjust thread creation insertion order.
Signed-off-by: Changping Yu <dead.ash@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-29 21:07:43 +02:00
Changping Yu ab7485bb4b kernel32/tests: Add test for thread enumeration order in toolhelp.
Signed-off-by: Changping Yu <dead.ash@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-29 21:07:38 +02:00
Zebediah Figura 50553b5db1 kernel32: Open the INI file in PROFILE_DeleteSection().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-29 09:24:40 +02:00
Zebediah Figura 17a3c0964d kernel32: Call PROFILE_DeleteSection directly from WritePrivateProfile* functions.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-29 09:24:35 +02:00
Jacek Caban be2443e0c5 kernel32: Reimplement OpenConsoleW on top of CreateFileW.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-26 21:52:38 +02:00
Jacek Caban 0556d9e6f1 kernelbase: Use NtCreateFile for console handles in CreateFileW.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-26 21:52:21 +02:00
Jacek Caban 9bdfb1a29a kernel32/tests: Add more tests for opening console.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-26 21:50:56 +02:00
Zebediah Figura 9fa54bf690 kernel32: Open the INI file in PROFILE_GetSection.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-22 19:22:51 +02:00
Zebediah Figura 60f344852d kernel32: Get rid of the last parameter to PROFILE_CopyEntry().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-22 19:22:43 +02:00
Zebediah Figura e4b2482e53 kernel32: Simplify GetPrivateProfileStringW().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-22 19:22:36 +02:00
Zebediah Figura 22a6c60e18 kernel32/tests: Add tests for profile struct functions.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-22 19:22:03 +02:00
André Hentschel d96fe8e1f7 kernel32/tests: Remove support for PPC32.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-17 16:46:14 +02:00
Nikolay Sivov 72d055854b ntdll: Use single field for misc flags in ComClass redirection section.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-11 21:03:34 +02:00
Derek Lesho d8d6a6b2e6 server: Partially implement JobObjectBasicAccountingInformation.
Signed-off-by: Derek Lesho <dlesho@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-09 21:23:33 +02:00
Brendan Shanks 7ac949a101 kernel32/tests: Add RegisterWaitForSingleObject() WT_EXECUTEINWAITTHREAD tests.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47843
Signed-off-by: Brendan Shanks <bshanks@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-09 12:12:35 +02:00
Brendan Shanks 08abbf091b kernel32/tests: Fix handle leak.
Signed-off-by: Brendan Shanks <bshanks@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-09 12:12:30 +02:00
Alexandre Julliard 20a9ec6c4f kernel32/tests: Avoid some more compiler warning for HeapAlloc() invalid parameter tests.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-08 14:59:30 +02:00
Alexandre Julliard 173644b08f kernel32: Use a vectored exception handler to catch Ctrl-C.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-06 16:43:48 +02:00
Alex Henrie e851e747bb kernel32/tests: Fix GetNLSVersion test failure on Windows Server 2003.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-04 11:59:26 +02:00
Alexandre Julliard 11217ee628 kernel32: Move SetConsoleCtrlHandler() implementation to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-03 10:20:47 +02:00
Alex Henrie 7af9488c10 kernelbase: Add GetPackageFamilyName stub.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49299
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-01 22:10:28 +02:00
Jacek Caban 0a3a2556c1 kernel32/tests: Avoid using abs on ULONGLONG values.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-28 20:10:53 +02:00
Jacek Caban 90f81e6198 kernel32/tests: Remove workaround for NT4.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-28 20:10:53 +02:00
Alexandre Julliard c7760ce7a2 kernel32: Remove string.c.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-27 00:14:10 +02:00
Alexandre Julliard f41e205dfc kernel32: Remove time.c.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-27 00:14:06 +02:00
Alexandre Julliard 3c9cf9b65f kernel32: Remove environ.c.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-27 00:14:03 +02:00
Alexandre Julliard 1b653e020d kernel32: Remove cpu.c.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-27 00:13:59 +02:00
Alexandre Julliard 30428c19c1 kernel32: Remove actctx.c.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-27 00:13:55 +02:00
Alexandre Julliard b6a38ea676 kernel32: Reimplement DosDateTimeToFileTime/FileTimeToDosDateTime using ntdll functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-26 15:58:14 +02:00
Alexandre Julliard fc173ccca8 kernel32: Reimplement GetProcessVersion() in kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-26 15:58:13 +02:00
Alexandre Julliard e076fff578 kernel32: Use set_ntstatus() in more places.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-26 13:10:34 +02:00
Alexandre Julliard 6133890590 kernel32: Leave some more space for kernelbase.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49208
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-26 12:26:31 +02:00
Alexandre Julliard 6bed2b427b kernel32: Move the *PreferredUILanguages functions to kernelbase and ntdll.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-22 14:31:55 +02:00
Alexandre Julliard 4ccc3e5285 kernel32: Move Get/SetSystemTimeAdjustment to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-22 14:31:55 +02:00
Alexandre Julliard 79e3c21c3c kernel32: Move GetSystemTimes() implementation to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-22 14:31:55 +02:00
Alexandre Julliard 7cc9ccbd22 kernel32: Move GetProcessTimes() implementation to kernelbase and ntdll.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-22 14:31:55 +02:00
Alexandre Julliard cd215bb49b kernel32: Use the user shared data to implement GetTickCount().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-21 19:36:52 +02:00
Vladimir Panteleev c4ef987429 kernelbase: Fix GetEnvironmentVariableW return for empty variables.
Do the same thing as Vista and up.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48471
Signed-off-by: Vladimir Panteleev <git@vladimir.panteleev.md>
Signed-off-by: Gijs Vermeulen <gijsvrm@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-15 14:08:51 +02:00
Vladimir Panteleev 4c06599c1f kernelbase: Don't return ERROR_INSUFFICIENT_BUFFER from GetEnvironmentVariableW.
Windows doesn't do this (except XP, and then only for empty variables,
where it returns ERROR_MORE_DATA).

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48471
Signed-off-by: Vladimir Panteleev <git@vladimir.panteleev.md>
Signed-off-by: Gijs Vermeulen <gijsvrm@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-15 14:08:51 +02:00
Vladimir Panteleev 7ad5e1bc8a kernelbase: Preserve last error when GetEnvironmentVariableA succeeds.
Avoid clobbering last error with NO_ERROR when GetEnvironmentVariableA
succeeds, matching the behavior of GetEnvironmentVariableW and
Windows.

Instead of naively saving and restoring the last error, call
RtlQueryEnvironmentVariable_U directly to avoid unnecessarily setting
it in the first place.

Signed-off-by: Vladimir Panteleev <git@vladimir.panteleev.md>
Signed-off-by: Gijs Vermeulen <gijsvrm@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-15 14:08:51 +02:00
Dmitry Timoshkov 1a7dd7cdbe kernel32/tests: Add a PE test image that resembles format of some of 8k demos.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-15 11:42:28 +02:00
Dmitry Timoshkov 360820fb58 kernel32: On process entry store PEB address in %ebx.
8k demo custom PE loader depends on this.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=42125
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-15 11:42:25 +02:00
Alexandre Julliard 8a1656bdf0 kernel32/tests: Add some tests for FormatMessageA/W buffer sizes.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-13 22:05:31 +02:00
Alexandre Julliard 7b01281745 kernelbase: Reimplement FormatMessageA/W using RtlFormatMessage().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-13 22:05:31 +02:00
Alexandre Julliard f00b88eabd kernel32/tests: Fix some incorrect FormatMessage() tests.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-07 19:59:25 +02:00
Alexandre Julliard a946e7fbbe kernel32/tests: Use wide character string literals in FormatMessage() tests.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-07 12:46:48 +02:00
Zebediah Figura 877bf2a7a0 kernelbase: Implement SetEnvironmentStrings().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48308
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-07 11:30:15 +02:00
Alexandre Julliard 876d7af94e kernel32: Move the psapi functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-06 16:24:24 +02:00
Jacek Caban 93d1eecb6a ntdll: Export _chkstk from importlib.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-05 20:53:02 +02:00
Alexandre Julliard 0c90da7f7e kernel32: Move some stub functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-05 20:53:02 +02:00
Alexandre Julliard a10f1e9d7b kernel32: Move FlushProcessWriteBuffers() stub to ntdll.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-05 20:53:02 +02:00
Alexandre Julliard 8555e948bd kernel32: Move Wer* function stubs to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-05 20:53:02 +02:00
Alexandre Julliard b6c9401882 kernel32: Move some file functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-05 20:53:02 +02:00
Alexandre Julliard e36a9c459d kernel32: Move volume functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-05 20:53:02 +02:00
Zebediah Figura 6849be3ffa kernel32/tests: Fix failures in test_GetThreadSelectorEntry() on 32-bit machines.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-05 10:52:02 +02:00
Zebediah Figura 42a18cf5fa kernel32/tests: Account for unsupported NLSVERSIONINFOEX.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-05 10:52:00 +02:00
Gijs Vermeulen e7abfe9533 kernel32: Remove unused functions is_executable() and get_table_entry().
Signed-off-by: Gijs Vermeulen <gijsvrm@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-01 22:03:16 +02:00
Jacek Caban b7ce75e989 wincon.h: Don't use calling convention wrappers on MSVC.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-27 12:04:08 +02:00
Jacek Caban c3fac6e36c server: Fix setting context flags in get_thread_context.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49011
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-27 11:30:30 +02:00
Zebediah Figura ea753c384e include: Rename the other In*OrderModuleList fields to In*OrderLinks for consistency.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-24 10:13:49 +02:00
Zebediah Figura 09db718d99 include: Rename BaseAddress to DllBase.
To match Microsoft's public definition.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-24 10:13:46 +02:00
Zebediah Figura 4b3e820e07 include: Rename InMemoryOrderModuleList to InMemoryOrderLinks.
To match Microsoft's public definition.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-24 10:13:43 +02:00
Zebediah Figura feeb1c7c24 include: Rename LDR_MODULE to LDR_DATA_TABLE_ENTRY.
This name is used in Microsoft's public winternl.h.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-24 10:13:39 +02:00
Paul Gofman a789548502 kernel32/tests: Mark ERROR_HANDLE_EOF result as broken for async file read.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-23 12:55:40 +02:00
Alex Henrie 22cdc4e3da kernelbase: Stub LoadAppInitDlls().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47061
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-22 17:21:16 +02:00
Jacek Caban bffd57d1d2 kernel32/tests: Use DECLSPEC_ALIGN in MSVC compatible way.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-20 20:55:12 +02:00
Jacek Caban 25ed1d9e82 kernel32/tests: Avoid arithmetic on pointer to stack variable.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-20 17:19:11 +02:00
Sven Baars 1b6b0cda7a kernel32: Fix a memory leak in MoveFileWithProgressW (Valgrind).
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-20 17:19:11 +02:00
Alexandre Julliard 99027aeaee kernel32: Move GetNamedPipeHandleStateW() implementation to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-16 22:10:04 +02:00
Jacek Caban 1da0d17419 kernelbase: Forward threadpool I/O functions to ntdll.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-15 11:40:38 +02:00
Zebediah Figura a6e70c6074 ntdll: Handle unaligned SRW locks when using futexes.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-14 11:23:04 +02:00
Zebediah Figura aceff21022 ntdll: Handle unaligned condition variables when using futexes.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48389
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-14 11:22:59 +02:00
Serge Gautherie 930ff8786f winapi_test: Add DYNAMIC_TIME_ZONE_INFORMATION to tests.dat.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-13 21:33:30 +02:00
Serge Gautherie 867a0bd6cd winapi_test: Tests.dat needs timezoneapi.h.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-13 21:33:30 +02:00
Piotr Caban 2df67d56f3 kernel32/tests: Test timeout behaviour on system clock change.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-09 21:04:04 +02:00
Zebediah Figura 928d1e6447 kernel32: Implement GetVolumeInformationByHandleW().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-09 09:12:03 +02:00
Zebediah Figura 4b2f8c80fb kernel32: Reimplement is_same_file() using FileIdInformation.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-09 09:12:00 +02:00
Andrew Eikum 2cd776fffd kernel32/tests: Actually run OpenFile tests.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-06 21:21:42 +02:00
Alexandre Julliard d9b6f26b7b kernel32: Use standard dlopen() instead of the libwine wrappers.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-06 21:21:41 +02:00
Zebediah Figura adfb042819 kernel32: Create the backup in the same directory.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-06 10:42:29 +02:00
Alexandre Julliard 6169cacd0d ntdll: Move support for getting LDT entries to the platform-specific files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-01 12:33:29 +02:00
Alexandre Julliard 2ec3396122 kernel32: Avoid using wctype functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-01 10:30:17 +02:00
Alexandre Julliard e71ffcde30 kernel32: Avoid using memchrW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-01 10:30:13 +02:00
Alexandre Julliard ce30db504b kernel32: Avoid using memrchrW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-01 10:28:57 +02:00
Alexandre Julliard 68587234bf kernel32: Avoid using tolowerW/toupperW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-01 10:28:01 +02:00
Alexandre Julliard 30ad67dc14 kernel32: Reimplement Get/WritePrivateProfileStructW functions using exported APIs.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-01 10:27:53 +02:00
Zebediah Figura bae4776c57 kernel32: Don't fail ReplaceFile() if unable to delete a generated backup.
Windows will just leave the file if unable to delete it.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-30 12:09:09 +02:00
Zebediah Figura faebd0ce14 kernel32/tests: Add more tests for deleting and replacing open files.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-30 12:09:09 +02:00
Rémi Bernon e2a1f00a38 server: Implement DBG_REPLY_LATER handling.
This flag causes the debug event to be replayed after the target thread
continues. It can be used, after suspending the thread, to resume other
threads and later return to the breaking.

This will help implementing gdb continue/step packets correctly.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-27 21:16:13 +01:00
Rémi Bernon a96393fe26 kernel32/tests: Add tests for ContinueDebugEvent with DBG_REPLY_LATER.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-25 19:25:25 +01:00
Jacek Caban 1a05b7da63 ntdll: Support device paths in LdrGetDllPath.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48698
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-25 15:26:33 +01:00
Francois Gouget 405fd5927a kernel32/tests: Fix the grammar and formatting of a process comment.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-24 20:31:18 +01:00
Francois Gouget 7e1b131a85 kernel32/tests: Add a couple of process helper functions.
wait_and_close_child_process() simplifies waiting for the child process
and closing its handles. And because it uses wait_child_process() this
ensures that any error happening in the child process is detected.
reload_child_dump() wraps a cryptic WritePrivateProfileStringA() call
and avoids having to add a comment every time.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-24 20:31:18 +01:00
Zebediah Figura 9b80443a8f kernel32: Reimplement GetVolumePathName() using NtQueryInformationFile(FileAttributeTagInformation).
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-23 12:14:07 +01:00
Zebediah Figura 54bda2991e kernel32/tests: Fix some test failures when run from a mounted folder.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-23 12:13:41 +01:00
Francois Gouget f08abe0811 kernel32/tests: Remove an unneeded sprintf() in the process tests.
The buffer content is not used before being overwritten again.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-23 11:36:40 +01:00
Francois Gouget 9d38c4864c kernel32/tests: Fix a race condition in test_QueryInformationJobObject().
The process must still be running for AssignProcessToJobObject() to
succeed.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-23 11:36:34 +01:00
Serge Gautherie be3cda6ec0 tests: Remove now useless forced _WIN32_WINNT defines.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-23 11:30:25 +01:00
Francois Gouget dd4fad93e4 kernel32/test: Fix the semaphore handling in test_WaitForJobObject().
Don't include 'sync ' in the semaphore name because it will end up as
a separate argument in the child process, causing it to not find the
semaphore.  Switch the child to OpenSemaphoreA() to reduce the risk of
accidentally create a new semaphore instead of opening the parent's
one.  Use wait_child_process() instead of a raw
WaitForSingleObject(). The timeout is longer but the process is
expected to exit immediately anyway and this allows proper handling of
child failures (such as if there is a bug with the semaphore
handling).

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-20 19:33:11 +01:00
Alexandre Julliard 84cca2baae kernelbase: Implement IsValidNLSVersion().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-20 14:49:36 +01:00