Commit Graph

3629 Commits

Author SHA1 Message Date
Jacek Caban 2fd27f0a04 kernel32: Use NtDeviceIoControlFile directly for IOCTL_CONDRV_READ_CONSOLE and IOCTL_CONDRV_WRITE_CONSOLE.
Avoids messing last error for non-conhost consoles.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-15 21:43:45 +02:00
Jacek Caban 666c5b6e20 kernel32: Use IOCTL_CONDRV_READ_CONSOLE in ReadConsoleW when possible.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-14 21:38:34 +02:00
Alexandre Julliard 8a5e603000 kernel32/tests: Avoid assumptions about the current working directory.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-14 19:42:39 +02:00
Jacek Caban 129149d212 kernel32/tests: Allow ENABLE_VIRTUAL_TERMINAL_PROCESSING in default mode.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-11 16:55:40 +02:00
Jacek Caban ab6056d677 kernel32: Use IOCTL_CONDRV_WRITE_CONSOLE in WriteConsoleW when possible.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-11 16:55:40 +02:00
Rémi Bernon 1445ae79e6 kernelbase: Also pass CreateFile2 file flags to CreateFileW.
Instead of just attributes.

Otherwise we may miss important flags like FILE_FLAG_OVERLAPPED and open
the file for synchronous I/O, causing a deadlock in Flight Simulator.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-09 22:36:13 +02:00
Alexandre Julliard c487f21b6b advapi32: Build with msvcrt.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-09 20:30:31 +02:00
Jacek Caban e151e4c8a1 kernel32/tests: Skip more tests on old Windows.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-08 21:21:01 +02:00
Alexandre Julliard a9a08dbc3d libwine: Remove wine/library.h.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-08 16:26:17 +02:00
Carlos Rivera 00a0e2cd8c kernel32/tests: Change file name to avoid collision with other tests.
Entries in IniFileMapping are persisted in Windows until the next
reboot, even if removed from the registry. This made the
function test_registry_mapping to cause other tests
that accessed the actual winetest.ini file to fail if the
profile test was run more than once on Windows without rebooting.

Signed-off-by: Carlos Rivera <carlos@superkaos.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-01 20:56:44 +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
Jacek Caban 7d3503d83e kernel32/tests: Skip more FreeConsole tests on win7.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-01 20:56:43 +02:00
Alexandre Julliard f7e4fd0cf8 kernel32: Remove the no longer used __wine_start_process() function.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-01 16:41:03 +02:00
Alexandre Julliard c2c330532e ntdll: Call the process entry point through RtlUserThreadStart().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-01 16:41:03 +02:00
Alexandre Julliard 1a9558cf9b ntdll: Call the thread entry point through BaseThreadInitThunk().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-01 16:41:03 +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
Zebediah Figura c0ab7af1b0 kernel32/tests: Pass the correct size for PROC_THREAD_ATTRIBUTE_PSEUDOCONSOLE.
Fixes test failures on 64-bit Wine and Windows 10.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-01 12:30:08 +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
Carlos Rivera c1c61bf255 kernel32/tests: Remove registry entry left out during test.
Signed-off-by: Carlos Rivera <carlos@superkaos.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-31 21:41:07 +02:00
Carlos Rivera 13e81421b7 kernel32/tests: Use debugstr_an to show contents of buffer.
In the tests modified the buffer to show is expected to contain
strings separated by \0. So that passing the buffer to
the ok macro will only print the first string. Showing the
whole returned buffer gives more information when the test
fails.

Signed-off-by: Carlos Rivera <carlos@superkaos.org>
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
Alexandre Julliard 2b40969c58 kernel32: Move the initial process breakpoint to LdrInitializeThunk().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-31 11:36:24 +02:00
Jacek Caban 21c99970f3 conhost: Implement IOCTL_CONDRV_SET_MODE.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-27 20:49:30 +02:00
Jacek Caban e5bd1ba4ad conhost: Implement IOCTL_CONDRV_GET_MODE.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-27 20:49:28 +02:00
Jacek Caban e703e2da39 conhost: Implement IOCTL_CONDRV_READ_INPUT.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-26 21:25:39 +02:00
Paul Gofman 53c1914e42 kernel32: Add string for E_NOTIMPL error.
Fixes a crash in Horizon Zero Dawn.

Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-25 19:31:43 +02:00
Sven Baars 47fe531729 kernel32: Free the right variable (Coverity).
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-24 22:14:44 +02:00
Sven Baars 8ea62f2ed1 kernel32: Fix some string leaks (Coverity).
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-24 22:14:44 +02:00
Jacek Caban d2496e2d5c conhost: Implement IOCTL_CONDRV_SET_TITLE.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-24 22:14:44 +02:00
Jacek Caban 5a151b060a conhost: Implement IOCTL_CONDRV_SET_MODE.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-24 22:14:44 +02:00
Carlos Rivera 70fdc36d29 kernel32: Remove obsolete comment.
Signed-off-by: Carlos Rivera <carlos@superkaos.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-24 11:16:13 +02:00
Jacek Caban 3c9d10d756 conhost: Implement IOCTL_CONDRV_GET_MODE.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-21 15:36:49 +02:00
Jacek Caban d902c33306 server: Queue console ioctls for execution in host when console server is attached.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-21 15:36:49 +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 36663d9abd kernel32/tests: Add CreatePseudoConsole tests.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-21 15:04:14 +02:00
Jacek Caban 7531091f33 kernel32/tests: Fix tests on some broken Windows versions.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-21 15:02:21 +02:00
Alexandre Julliard 13ea90d80f kernel32: Fix user handle conversion in GetConsoleWindow().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-20 21:44:20 +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
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 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 f54c7205b6 kernel32: Use IOCTL_CONDRV_GET_INPUT_INFO in CONSOLE_GetNumHistoryEntries.
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 36fc962f5c kernel32: Use IOCTL_CONDRV_GET_INPUT_INFO in GetConsoleWindow.
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 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