Commit Graph

600 Commits

Author SHA1 Message Date
Nikolay Sivov 1c2b14a524 kernelbase: Forward ConvertToAutoInheritPrivateObjectSecurity() to ntdll.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-02 16:30:04 +02:00
Jacek Caban 82e8fd97f6 kernelbase: Use IOCTL_CONDRV_CTRL_EVENT in GenerateConsoleCtrlEvent.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-01 20:56:43 +02:00
Paul Gofman 81a08cea79 kernel32: Implement CopyContext().
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-01 12:34:43 +02:00
Paul Gofman 85a33ff731 kernel32: Implement GetXStateFeaturesMask().
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-01 12:33:47 +02:00
Paul Gofman 541b06747a kernel32: Implement SetXStateFeaturesMask().
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-01 12:33:44 +02:00
Jacek Caban 26e04d52fe kernelbase: Move KERNEL32_CONSOLE_ALLOC handling to kernelbase.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-31 21:41:07 +02:00
Paul Gofman ff88ed8b06 kernel32: Implement LocateXStateFeature().
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-31 21:41:06 +02:00
Paul Gofman 2d544ff8a0 kernel32: Implement InitializeContext[2]().
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-31 21:41:06 +02:00
Jacek Caban 76037ffbee kernelbase: Support PROC_THREAD_ATTRIBUTE_PSEUDOCONSOLE.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-21 15:04:31 +02:00
Jacek Caban 0ec191eb0f kernelbase: Add ClosePseudoConsole implementation.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-21 15:04:04 +02:00
Jacek Caban 7ea9f9edee kernelbase: Add CreatePseudoConsole implementation.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-21 15:03:52 +02:00
Paul Gofman a4af2b2b70 kernel32: Implement GetEnabledXStateFeatures().
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-20 21:14:15 +02:00
Nikolay Sivov 1721f0ff27 kernelbase: Pass inherited handles list when creating new process.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-20 18:48:49 +02:00
Dmitry Timoshkov 3786462a56 kernelbase: Native machine is optional for IsWow64Process2.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49716
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-18 21:42:14 +02:00
Jacek Caban 30596feb03 server: Use passed console handle to inherit console for created process.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-18 21:39:36 +02:00
Jacek Caban 6cff65900d kernelbase: Use IOCTL_CONDRV_SET_TITLE in SetConsoleTitleW.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-18 21:39:15 +02:00
Jacek Caban 32eb41de8c kernelbase: Use IOCTL_CONDRV_SET_INPUT_INFO in SetConsoleOutputCP.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-18 21:39:12 +02:00
Jacek Caban c6e0cb6c72 kernelbase: Use IOCTL_CONDRV_SET_INPUT_INFO in SetConsoleCP.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-18 21:39:08 +02:00
Jacek Caban 7444aa4230 kernelbase: Use IOCTL_CONDRV_GET_TITLE in GetConsoleTitleW.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-14 22:02:04 +02:00
Jacek Caban 3576258402 kernelbase: Use IOCTL_CONDRV_GET_INPUT_INFO in GetConsoleOutputCP.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-14 22:02:04 +02:00
Jacek Caban 4faed406d4 kernelbase: Use IOCTL_CONDRV_GET_INPUT_INFO in GetConsoleCP.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-14 22:02:04 +02:00
Jacek Caban 1d65e474b1 kernelbase: Use PEB ConsoleHandle to check for console connection in AllocConsole.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-13 21:13:32 +02:00
Jacek Caban 43ce429234 kernelbase: Move CONTROL_C_EXIT handler to kernelbase.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-13 21:13:26 +02:00
Jacek Caban 06c3e7e44c kernelbase: Close PEB ConsoleHandle in AttachConsole.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-13 21:12:32 +02:00
Jacek Caban 57a222356c kernel32: Set PEB console handle in AllocConsole.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-13 21:12:27 +02:00
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
Alexandre Julliard 4f3534fa6f kernelbase: Fix console ioctl output sizes.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-11 14:49:24 +02:00
Myah Caron 94b5ccef81 kernelbase/tests: Add test for Sleep(1).
Sleep(1) should sleep until the next kernel tick, not necessarily one
millisecond. Thanks to Henri Verbeet for pointing this out.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49564
Signed-off-by: Myah Caron <qsniyg@protonmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-10 21:28:41 +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 1c843d3997 kernelbase: Add missing consts to ScrollConsoleScreenBuffer declaration.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-03 21:23:54 +02:00
Jacek Caban ed83583934 kernelbase: Use init_console_std_handles in AttachConsole.
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 53f17314aa kernelbase: Close handles allocated by AllocConsole in FreeConsole.
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 bd54f39766 kernelbase: Fix handling processes using STARTF_USESTDHANDLES when setting standard handles in AllocConsole.
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 e7550069de kernelbase: Lock console critical section when changing current console.
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 3609406308 kernelbase: Use IOCTL_CONDRV_SCROLL in ScrollConsoleScreenBufferW.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-29 14:13:28 +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 f8fa6fd686 kernelbase: Use IOCTL_CONDRV_READ_OUTPUT in ReadConsoleOutputW.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-28 19:31:37 +02:00
Jacek Caban 5f6bb63800 kernelbase: Use IOCTL_CONDRV_READ_OUTPUT in ReadConsoleOutputAttribute.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-28 19:31:35 +02:00
Jacek Caban 300a01f467 kernelbase: Use IOCTL_CONDRV_READ_OUTPUT in ReadConsoleOutputCharacterW.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-28 19:31:33 +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
Jacek Caban db886f0923 kernelbase: Use IOCTL_CONDRV_WRITE_OUTPUT in WriteConsoleOutputCharacterW.
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 30453f0acf kernelbase: Use IOCTL_CONDRV_WRITE_OUTPUT in WriteConsoleOutputAttribute.
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 09ab7e8a0c kernelbase: Use IOCTL_CONDRV_WRITE_OUTPUT in WriteConsoleOutputW.
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 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
Jacek Caban f4d7d89550 kernelbase: Use IOCTL_CONDRV_ACTIVATE in SetConsoleActiveScreenBuffer.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 23:16:52 +02:00
Jacek Caban 6039b78594 kernelbase: Avoid unneeded GetConsoleOutputCP calls.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 23:16:52 +02:00
Zebediah Figura 1cf4a1c088 kernelbase: Create DOS drive links as permanent objects.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 00:04:13 +02:00
Alexandre Julliard d1f83537e7 kernelbase: Use FSCTL_GET_OBJECT_ID to compare file identities.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 00:04:13 +02:00
Jacek Caban a07aa965e5 kernelbase: Use IOCTL_CONDRV_FILL_OUTPUT in fill_console_output.
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 440e31a732 kernelbase: Use IOCTL_CONDRV_FILL_OUTPUT in FillConsoleOutputAttribute.
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 bf6a803e04 kernelbase: Use IOCTL_CONDRV_FILL_OUTPUT in FillConsoleOutputCharacterW.
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 7aadafbd50 kernelbase: Use IOCTL_CONDRV_SET_MODE in SetConsoleMode.
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
Jacek Caban 07194e9287 kernelbase: Use IOCTL_CONDRV_SET_OUTPUT_INFO in SetConsoleWindowInfo.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-10 22:55:12 +02:00
Jacek Caban 2efb498a7b kernelbase: Use IOCTL_CONDRV_SET_OUTPUT_INFO in SetConsoleTextAttribute.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-10 22:55:12 +02:00
Jacek Caban f7a7633aa1 kernelbase: Use IOCTL_CONDRV_SET_OUTPUT_INFO in SetConsoleScreenBufferSize.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-10 22:55:12 +02:00
Jacek Caban b21d2e5f58 kernelbase: Use IOCTL_CONDRV_SET_OUTPUT_INFO in SetConsoleScreenBufferInfoEx.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-10 22:55:12 +02:00
Jacek Caban 5ff23d2218 kernelbase: Use IOCTL_CONDRV_SET_OUTPUT_INFO in SetConsoleCursorPosition.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-10 22:55:12 +02:00
Jacek Caban 3b81ea3161 kernelbase: Use IOCTL_CONDRV_SET_OUTPUT_INFO in SetConsoleCursorInfo.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-10 22:55:12 +02:00
Jacek Caban 674ec0c7f6 kernelbase: Introduce console_ioctl helper.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-10 22:55:12 +02:00
Jacek Caban 94c1640bb3 kernelbase: Use IOCTL_CONDRV_GET_OUTPUT_INFO in GetConsoleScreenBufferInfoEx.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-09 19:42:07 +02:00
Jacek Caban 587ca81f8d kernelbase: Use IOCTL_CONDRV_GET_OUTPUT_INFO in GetConsoleScreenBufferInfo.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-09 19:42:05 +02:00
Jacek Caban 547855e623 kernelbase: Use IOCTL_CONDRV_GET_OUTPUT_INFO in GetConsoleCursorInfo.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-09 19:42:03 +02:00
Jacek Caban d25a267978 kernelbase: Use IOCTL_CONDRV_GET_OUTPUT_INFO in GetLargestConsoleWindowSize.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-09 19:42:01 +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
Jacek Caban 640773aa9e kernelbase: Use ioctl for WriteConsoleInputW implementation.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-07 19:24:27 +02:00
Jacek Caban e3caa9c420 kernelbase: Reimplement PeekConsoleInputW using IOCTL_CONDRV_PEEK.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-06 21:13:13 +02:00
Jacek Caban 4448715cfb kernelbase: Reimplement GetNumberOfConsoleInputEvents using IOCTL_CONDRV_GET_INPUT_INFO.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-06 21:11:32 +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 4031265f69 kernelbase: Invalidate console wait handle in FreeConsole.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-01 20:33:07 +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
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
Jeff Smith 0e77260ae9 kernelbase: Output message ID as hex in debug messages.
Signed-off-by: Jeff Smith <whydoubt@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-08 21:01:32 +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
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 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 8ca9e0b1ab kernelbase: Use the user shared data to implement GetTickCount().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-21 19:36:52 +02:00
Alexandre Julliard 6a1667fab4 kernelbase: Move WaitOnAddress implementation to sync.c.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-21 19:36:52 +02:00
Zhiyi Zhang 3cbd9cda19 kernelbase: Check NULL canonicalized_len parameter in UrlCanonicalizeW().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49175
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-18 12:09:54 +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
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
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 9c0a205ff4 kernelbase: Add CopyMemoryNonTemporal export.
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
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
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
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
Sven Baars a202ecd457 kernelbase: Fix a string leak in CreateProcessInternal (Valgrind).
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-20 12:49: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 b66e13ef24 kernelbase: Implement CreateThreadpoolIo.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-15 11:40:49 +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 dab50548e0 kernelbase: Return the volume serial number in GetFileInformationByHandle().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-09 09:11:53 +02:00
Serge Gautherie 7c0ba9007a kernelbase: Handle RegGetValue() RRF_SUBKEY_WOW64??KEY flags.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-27 21:16:12 +01:00
Jefferson Carpenter f070d040eb kernelbase: Zero out retkey in the ERROR_INVALID_HANDLE case in RegOpenKeyExW.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48798
Signed-off-by: Jefferson Carpenter <jeffersoncarpenter2@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-27 21:16:12 +01:00
Gijs Vermeulen e97fa67bc2 kernelbase: Set req->mask in SetConsoleScreenBufferInfoEx.
Signed-off-by: Gijs Vermeulen <gijsvrm@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-25 20:50:34 +01:00
Alexandre Julliard 375668e122 kernelbase: Open registry keys before looking for sort table.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-24 19:43:38 +01:00
Alexandre Julliard 84cca2baae kernelbase: Implement IsValidNLSVersion().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-20 14:49:36 +01:00
Alexandre Julliard 86522976c9 kernelbase: Implement GetNLSVersion/GetNLSVersionEx().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-20 14:43:55 +01:00
Gabriel Ivăncescu 563a8c0f98 kernelbase: Implement compatibility mode for GetVersion.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-19 13:29:24 +01:00
Gabriel Ivăncescu 6719bf2e03 kernelbase: Implement compatibility mode for GetVersionEx.
Since Windows 8.1, these functions have been deprecated and run in a sort
of compatibility mode, reporting Windows 8 unless the application supplies a
manifest that specifies compatibility with newer Windows versions explicitly
(by listing their GUIDs).

Some applications have bad non-forward-compatible checks based
on GetVersionEx, and depend on this behavior (they do not supply a
manifest). Currently, they break on Wine if we use a Windows 10 prefix for
example, since we always report the real version. One example is the game
Rock of Ages.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-19 13:28:58 +01:00
Alexandre Julliard b780e5f5b1 kernelbase: Use linguistic case table for LCMAP_LINGUISTIC_CASING.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-18 12:02:53 +01:00
Alexandre Julliard c567af732b kernelbase: Use the ctype table from the sortkey file.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-17 15:19:20 +01:00
Alexandre Julliard 4b1676af06 kernelbase: Load the sortkey file and use it for the case mapping table.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-17 15:18:57 +01:00
Alexandre Julliard 95aeb41c8c unicode: Generate the NLS file for sortkeys.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-17 15:18:57 +01:00
Alexandre Julliard 712839d581 unicode: Generate a registry script for Nls keys.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-17 15:18:52 +01:00
Alexandre Julliard d87d4a4a04 unicode: Store data for CT_CTYPE3 types.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-17 11:26:47 +01:00
Alexandre Julliard b83af7c763 unicode: Update data tables to Unicode 13.0.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-13 13:23:11 +01:00
Alexandre Julliard 5933c2a690 kernelbase: Don't allow the full Unicode character range in path functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-10 20:39:21 +01:00
Alexandre Julliard 0eec0eb7e0 kernelbase: Don't allow the full Unicode character range in StrToInt* functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-10 20:39:21 +01:00
Alexandre Julliard ef95e4a8b9 kernelbase: Don't use wcsicmp/wcsnicmp() on the full Unicode character range.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-10 20:39:21 +01:00
Alexandre Julliard 1a9ddc3759 kernelbase: Don't use towlower() on the full Unicode character range.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-10 20:39:21 +01:00
Alexandre Julliard 762f51cf93 kernelbase: Use wide character string literals in the remaining files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-10 10:00:53 +01:00
Alexandre Julliard b8fe91248d kernelbase: Use wide character string literals in registry.c.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-10 10:00:53 +01:00
Alexandre Julliard fe79b87f02 kernelbase: Use wide character string literals in path.c.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-10 10:00:53 +01:00
Alexandre Julliard d88bbf0a45 kernelbase: Use wide character string literals in file.c.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-09 22:16:30 +01:00
Alexandre Julliard 5be54b885e kernelbase: Use wide character string literals in debug.c.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-09 22:16:30 +01:00
Jacek Caban eb49e43506 kernelbase/tests: Add test of assembly path of manifest embedded in exe module.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-09 12:10:52 +01:00
Aaro Altonen b21881f53c kernelbase: Implement SetConsoleScreenBufferInfoEx().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47288
Signed-off-by: Aaro Altonen <a.altonen@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-05 19:58:42 +01:00
Alexandre Julliard 80e8c138f1 kernel32: Move Idn functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 13:20:25 +01:00
Alexandre Julliard e7eaa1a857 unicode: Remove no longer used normalization tables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-21 13:48:44 +01:00
Alexandre Julliard 55dc4fce99 kernelbase: Use external NLS files for Unicode composition.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-21 13:48:44 +01:00
Alexandre Julliard 2b9d720ea0 unicode: Take into account explicit composition exclusions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-17 15:04:59 +01:00
Alexandre Julliard 30f298f5db unicode: Remove non-starter and compatibility compositions from the table.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-17 15:04:59 +01:00
Alexandre Julliard 64e6d72284 unicode: Add support for high Unicode planes in composition tables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-17 15:04:59 +01:00
Alexandre Julliard c658731975 unicode: Add support for high Unicode planes in decomposition tables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-17 15:04:59 +01:00
Paul Gofman c28225fe5a kernel32: Add semi-stub for LoadPackagedLibrary().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48229
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-12 20:25:27 +01:00
Nikolay Sivov 480d8b8253 kernel32: Add StartThreadpoolIo() stub.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-12 16:54:03 +01:00
Nikolay Sivov ad5257b3b6 kernel32: Add threadpool stack information exports.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-12 16:54:03 +01:00
Alexandre Julliard 44ce5d9283 unicode: Support fetching a zip containining the data files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-09 09:48:42 +01:00
Kevin Puetz b064d32c52 kernelbase: Allow NULL lpAssemblyDirectoryName in find_actctx_dllpath.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-05 21:32:05 +01:00
Alexandre Julliard 0576fa43c4 unicode: Expand surrogates in decomposition tables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-04 21:30:26 +01:00
Alexandre Julliard cd8eaef47e unicode: Avoid copying the decomposition data when not necessary.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-04 21:30:26 +01:00
Alexandre Julliard a646e4e6f2 unicode: Store recursive decompositions directly in the tables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-04 21:30:26 +01:00
Alexandre Julliard dba4bd756a unicode: Store variable-length sequences also for the main decomposition table.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-04 21:30:26 +01:00
Alexandre Julliard 8d11c0871e kernelbase: Fix NormalizeString() return value and last error.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-03 20:48:03 +01:00
Alexandre Julliard f0a82c3a2a kernelbase: Use RtlNormalizeString() directly in FoldStringW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-03 19:20:39 +01:00
Zebediah Figura 69996b6130 kernelbase: Use the %I length modifier to print pointer-size integers.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-31 10:20:44 +01:00
Zebediah Figura c7019a8887 kernelbase: Implement ReOpenFile().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47668
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-28 19:33:06 +01:00
Alexandre Julliard f17a228d45 unicode: Try harder to reuse subsequences when compressing data arrays.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-28 19:26:13 +01:00
Alexandre Julliard bfeb0a97fe unicode: Use a standard two-level mapping table for the sortkeys map.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-28 19:25:07 +01:00
Alexandre Julliard 31360d4785 unicode: Use a standard two-level mapping table for the digit map.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-28 18:58:50 +01:00
Roman Pišl b53e466794 kernelbase: Implement GetThreadIdealProcessorEx stub.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48313
Signed-off-by: Roman Pišl <rpisl@seznam.cz>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-27 16:47:52 +01:00
Alexandre Julliard a08821186a unicode: Use existing helpers to build the sortkeys table.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-23 21:11:29 +01:00
Nikolay Sivov 47c691a27c kernel32: Fix spec entries for GetLongPathName().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-07 22:26:08 +01:00
Alexandre Julliard 8f7d88c707 kernelbase: Set an explicit load address.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48417
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-05 17:31:58 +01:00
Alexandre Julliard b276bda5a2 kernelbase: Remove trailing dot in GetComputerNameExW() when domain name is empty.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48293
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-05 17:30:34 +01:00
Nikolay Sivov ac72e61edf kernelbase: Fix a typo in weights comparison helper (Coverity).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-03 21:40:59 +01:00
Akihiro Sagawa a85bc781d3 kernelbase: Use translated Unicode default char to check invalid chars.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48288
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-16 18:45:01 +01:00
Paul Gofman b989a85484 kernelbase: Support PROC_THREAD_ATTRIBUTE_PARENT_PROCESS in CreateProcessInternalW().
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-13 11:30:01 +01:00
Alexandre Julliard 3318278bfd kernelbase: No longer import kernel32.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-13 09:50:24 +01:00
Alexandre Julliard 9fba161dfd kernelbase: Remove support for LZ files in 32-bit version functions.
Windows doesn't support it either.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-13 09:49:52 +01:00
Alexandre Julliard 7822b85411 kernelbase: Implement the Get/SetComputerName functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-12 23:17:05 +01:00
Alexandre Julliard e2ab5b76c1 kernelbase: Implement DnsHostnameToComputerNameExW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-12 23:17:05 +01:00
Alexandre Julliard 356d0fcc5b kernelbase: Reimplement EnumDynamicTimeZoneInformation() using GetTimeZoneInformationForYear().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-12 23:16:57 +01:00
Alexandre Julliard 207c558003 kernelbase: Move some console support back to kernel32.
That's where the bulk of the console code still resides.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-12 23:16:40 +01:00
Alexandre Julliard 1ec0769cf6 kernelbase: Use a direct server call instead of GetConsoleInputWaitHandle().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-12 23:16:40 +01:00
Alexandre Julliard 2d0e8ff672 kernelbase: Save registry keys directly to the destination file.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-12 23:16:40 +01:00
Alexandre Julliard d1bc340fce kernelbase: Avoid using OpenFile().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-11 23:25:58 +01:00
Alexandre Julliard a76518c186 kernelbase: Use exception handlers instead of IsBad* functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-11 23:25:58 +01:00
Alexandre Julliard 22b2250834 kernelbase: Redirect heap allocation functions to ntdll.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-11 22:46:19 +01:00
Alexandre Julliard a3b8e944e6 kernelbase: Avoid calling some kernel32 functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-11 21:56:16 +01:00
Alexandre Julliard 9b0877db4a kernel32: Move FindFirst/NextFile functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-11 21:51:28 +01:00
Francois Gouget 79c967838d kernelbase/tests: Avoid an uneeded lstrlenW() call.
Note that path_outW is an array and thus cannot be NULL.

Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-10 20:59:19 +01:00
Alexandre Julliard 89500484c2 kernel32: Move timezone functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-10 20:59:19 +01:00
Alexandre Julliard 0235e51465 kernelbase: Add IsBadStringPtr() replacement functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-10 18:24:32 +01:00
Alexandre Julliard 7b3c0fbed2 kernelbase: Add an OpenConsoleW() replacement wrapper.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-10 18:24:32 +01:00
Hari Saksena 849ff3b60d kernelbase: Fix ullAvailPageFile showing wrong memory info.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48185
Signed-off-by: Hari Saksena <hari.mail@protonmail.ch>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-09 23:47:46 +01:00
Alexandre Julliard eeb8eddfa2 kernel32: Move GeoID functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-09 23:47:46 +01:00
Alexandre Julliard 098e71ad61 kernel32: Move the CompareString functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-09 23:47:46 +01:00
Alexandre Julliard 94a3add0ea kernel32: Move LCMapString functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-09 23:47:46 +01:00
Alexandre Julliard c7c8016b70 kernelbase: Directly use the wctype table for the IsChar* functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-09 23:47:46 +01:00
Alexandre Julliard 1b46da5c05 kernel32: Move GetStringType functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-09 23:47:46 +01:00
Nikolay Sivov 624ed18b1f Update to Unicode 12.1.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-09 23:47:45 +01:00
Alexandre Julliard 6bcda47419 kernel32: Move Get/SetLocaleInfoW() to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-09 23:47:45 +01:00
Alexandre Julliard 830de63139 kernel32: Use MultiByteToWideChar() and WideCharToMultiByte() from kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-09 15:30:03 +01:00
Alexandre Julliard 328ec3a768 kernelbase: Reimplement WideCharToMultiByte using Win32-format codepage tables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-06 22:30:23 +01:00
Alexandre Julliard 7e8f1dac30 kernelbase: Reimplement MultiByteToWideChar() using Win32-format codepage tables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-06 22:30:23 +01:00
Alexandre Julliard b828424612 kernelbase: Verify that the file can be opened when looking for an executable.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48211
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-04 10:55:15 +01:00
João Diogo Ferreira 7b1b0ce506 kernelbase: Update GeoID when locale has changed.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46196
Signed-off-by: João Diogo Craveiro Ferreira <devilj@outlook.pt>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-04 10:55:15 +01:00
Nikolay Sivov 7082ebc608 ntdll: Use better type for thread description info structure.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-03 21:27:14 +01:00
Alexandre Julliard 94d2b4742c kernelbase: Fix assumptions about 0-size output buffer in ntdll Unicode conversion functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-03 09:30:43 +01:00
Andrey Gusev 2a64dd44bc kernelbase/tests: Fix a typo in ok() message.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-02 22:02:57 +01:00
Zebediah Figura 216530f230 kernelbase: Implement GetOverlappedResultEx().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=38830
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-29 08:26:30 +01:00
Alexandre Julliard 7bb286ad9d kernel32: Move FoldStringW() function to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-28 09:05:13 +01:00
Alexandre Julliard 03deff4e0d kernel32: Move codepage functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-27 17:04:44 +01:00
Alexandre Julliard d05c9f12fb kernelbase: Initialize codepage data using ntdll functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-27 09:54:51 +01:00
Nikolay Sivov 179cd78f82 kernel32: Implement higher level API to access thread description.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-26 16:33:55 +01:00
Alexandre Julliard 2cbb6f8d34 kernel32: Move some locale functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-21 13:20:23 +01:00
Alexandre Julliard fd588a22b7 kernel32: Move string normalization functions to ntdll.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-21 10:43:46 +01:00
Dmitry Timoshkov feb3d8e33c kernelbase: When enumerating calendars initialize optional to 0.
This fixes regression introduced by 42ed9797b1.

Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-21 09:34:34 +01:00
John Chadwick 9021cca65d kernelbase: Fix GetSystemFirmwareTable regression.
Regression caused by 71aba33fc6.

Signed-off-by: John Chadwick <john@jchw.io>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-20 23:03:21 +01:00
Alexandre Julliard 35ea9cd99a kernel32: Move the locale registry setup to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-20 23:03:21 +01:00
Alexandre Julliard 71aba33fc6 kernel32: Move system information functions to kernelbase. 2019-11-19 23:15:04 +01:00
Alexandre Julliard b73cfa72ed kernel32: Move physical memory status functions to kernelbase. 2019-11-19 23:15:04 +01:00
Alexandre Julliard ab6970d9b0 kernel32: Move Get/SetCalendarInfo to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-18 19:12:13 +01:00
Alexandre Julliard 42ed9797b1 kernel32: Move EnumCalendarInfo functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-18 19:12:13 +01:00
Alexandre Julliard 50d15730df kernel32: Move EnumTimeFormats functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-16 20:11:21 +01:00
Alexandre Julliard 02d9ccb3c3 kernel32: Move EnumDateFormats functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-16 20:08:58 +01:00
Alexandre Julliard 712ae337fe kernel32: Move CreateProcess() functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-12 22:05:58 +01:00
Alexandre Julliard 4405195b3c kernel32: Move GetSystemWow64Directory() functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-12 22:05:58 +01:00
Alexandre Julliard bf03953942 kernelbase: Implement GetSystemWow64Directory2().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-12 22:05:58 +01:00
Dmitry Timoshkov fde235da03 kernelbase: Implement EqualDomainSid.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-12 22:05:58 +01:00
Conor McCarthy b4684bc561 kernelbase: Add stub for SetThreadDescription().
Used by Hitman 2.

Signed-off-by: Conor McCarthy <cmccarthy@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-07 21:53:15 +01:00
Alexandre Julliard eac5237921 kernelbase: Fix fault address printing for the PE build.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-23 21:08:45 +02:00
Alexandre Julliard 9551cb0b84 kernelbase: Fix variable name aliasing issue.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-19 15:23:32 +02:00
Jacek Caban 293dae8fdc kernelbase: Update SetNamedPipeHandleState debug trace.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-17 21:04:58 +02:00
Alexandre Julliard a7c190d35f kernel32: Move system locale enumeration functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-04 22:11:20 +02:00
Alexandre Julliard 8d25965e12 kernel32: Move SearchPath functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-04 09:44:29 +02:00
Alexandre Julliard c5dc41e980 kernel32: Move LoadLibrary functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-03 22:58:06 +02:00
Alexandre Julliard 619bd16e7a kernel32: Move dll path functions to ntdll.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-03 22:56:14 +02:00
Nikita Morozkin c27ee58420 advapi32: Stub SetPrivateObjectSecurityEx().
Signed-off-by: Nikita Morozkin <nmzikcs@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-01 17:10:50 +02:00
Alexandre Julliard 31d522ea53 kernelbase: Use set_ntstatus() in more places.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-27 13:26:52 +02:00
Sven Baars f4ecef4565 kernelbase: Fix a leak on error path (Coverity).
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-26 21:51:32 +02:00
Zebediah Figura 1669956966 kernelbase: Implement GetFileInformationByHandleEx(FileAttributeTagInfo).
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47813
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-26 21:02:39 +02:00
Alexandre Julliard eac5395fb4 kernel32: Move some misc functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-26 19:36:10 +02:00
Alexandre Julliard ea43b87c00 kernel32: Move NUMA-related functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-26 19:36:10 +02:00
Alexandre Julliard 2c68c530af kernel32: Move file time functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-26 19:36:10 +02:00
Alexandre Julliard 0f5538b9e3 kernel32: Move delay-load functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-26 19:36:10 +02:00
Alexandre Julliard 950773dc06 kernel32: Move some handle functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-26 19:36:10 +02:00
Zhiyi Zhang 80fd28c7f2 kernelbase/tests: Add more PathAllocCanonicalize tests.
Contains tests added by Jeff Smith <whydoubt@gmail.com>

Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Jeff Smith <whydoubt@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-19 12:22:39 +02:00
Jeff Smith c13a8f60bd kernelbase: Fix PathAllocCanonicalize handling segments that contain dots.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47766
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Jeff Smith <whydoubt@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-19 12:22:35 +02:00
Zhiyi Zhang de6554a312 kernelbase: Comment out DECLSPEC_HOTPATCH for GetThreadLocale.
Triggered by i686-w64-mingw32-gcc 8.3 with -Og.

Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-18 21:55:16 +02:00
Alexandre Julliard b1bb4f84e2 kernelbase: Don't round thread stack guaranteed size when it is zero.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-18 21:55:16 +02:00
Alexandre Julliard 7c0032b62a kernel32: Move some locale functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-17 18:32:14 +02:00
Alexandre Julliard e3e1bede1b kernel32: Move some path functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-17 16:50:44 +02:00
Alexandre Julliard 55e9b666a0 kernel32: Move console functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-10 23:20:41 +02:00
Alexandre Julliard f3960c32f1 kernel32: Move ioctl functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-09 21:05:07 +02:00
Alexandre Julliard 911e50849a kernel32: Move process startup information functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-09 16:25:55 +02:00
Alexandre Julliard 3e6b961f00 kernel32: Move environment functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-09 16:25:55 +02:00
Alexandre Julliard a311140f93 kernel32: Move QueryPerformanceCounter/Frequency functions to ntdll.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-09 16:25:55 +02:00
Alexandre Julliard ddf82f7c0d kernel32: Move unhandled exception functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-09 16:25:55 +02:00
Alexandre Julliard 3b002685fe kernel32: Move debugger functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-09 11:44:29 +02:00
Alexandre Julliard 471c2f565c kernel32: Move OS version functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-09 11:44:29 +02:00
Alexandre Julliard d38a5ba4e6 kernel32: Move global/local memory functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-09 11:44:29 +02:00
Alexandre Julliard 67a9700267 kernel32: Move memory resource functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-08 22:52:09 +02:00
Alexandre Julliard cad0f61808 kernel32: Move heap functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-08 22:52:09 +02:00
Alexandre Julliard 61516e2223 kernel32: Move virtual memory functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-08 22:52:09 +02:00
Alexandre Julliard 0b5c0bc769 kernel32: Move file change notification functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-08 22:52:09 +02:00