Commit Graph

2160 Commits

Author SHA1 Message Date
Sebastian Lackner 34b2d920b4 ntdll: Improve check_atl_thunk to prevent passing exceptions to the usermode application. 2014-10-15 11:52:06 +09:00
Sebastian Lackner 511a849046 kernel32/tests: Add test to show ATL thunk emulator exceptions are not passed to usermode. 2014-10-15 11:51:58 +09:00
Akihiro Sagawa 4aea5ca72b kernel32: Fix incorrect lastpart in GetFullPathNameA with DBCS. 2014-10-14 14:20:05 +09:00
Sebastian Lackner 1c957ceb96 ntdll: Only check for ATL thunk if allowed by execute option flags.
Checking for ATL thunks can be disabled by setting MEM_EXECUTE_OPTION_DISABLE_THUNK_EMULATION.
2014-10-13 18:31:26 +09:00
Sebastian Lackner e16996bb3d ntdll: reset_write_watches shouldn't remove enforced exec permissions. 2014-10-13 18:31:19 +09:00
Sebastian Lackner aa3c6111d9 ntdll: Ensure force_exec_prot is also used for views with write watch permissions. 2014-10-13 18:31:14 +09:00
Sebastian Lackner 0cf3d78167 ntdll: Avoid recursive exception handler calls when handling guard pages.
The ATL check leads to problems when a page is protected with guard page protection.
raise_segv_exception is called with EXCEPTION_EXECUTE_FAULT. The ATL check tries to
read the memory, and triggers another exception handler. This time the virtual_handle_fault
check is executed, and removes the guard page protection. Afterwards, when the ATL
check returns, the exception is _not_ catched by virtual_handle_fault, but instead
passed to the application.
2014-10-13 18:31:06 +09:00
Sebastian Lackner 9a806d0f1c kernel32/tests: Add tests for DEP combined with guard pages and write watches. 2014-10-13 18:30:57 +09:00
André Hentschel 8e917352e1 kernel32/tests: Skip on faked version values. 2014-10-09 17:36:22 +02:00
Austin English 96e920e01f kernel32: Add a stub for SetSystemFileCacheSize. 2014-10-08 16:34:29 +02:00
Austin English 2a5299ea32 kernel32: Add a stub for GetSystemFileCacheSize. 2014-10-08 16:34:17 +02:00
Sebastian Lackner 5272ca241b ntdll: Set ldr.EntryPoint for main executable. 2014-10-07 20:22:13 +02:00
Sebastian Lackner 9d30002f7d kernel32/tests: Add tests for K32GetModuleInformation. 2014-10-07 20:22:12 +02:00
Michael Müller 9e69715900 ntdll: Fix handling of page fault if a guard page and write watch is triggered at the same time. 2014-10-07 20:21:56 +02:00
Sebastian Lackner 53611dfbab kernel32/tests: Add tests for PAGE_GUARD memory protection. 2014-10-07 20:21:54 +02:00
Nikolay Sivov 6d406fe9e7 kernel32/nls: Added support for LOCALE_SOPENTYPELANGUAGETAG. 2014-10-06 17:33:44 +02:00
Sebastian Lackner c9b4344322 kernel32/tests: Add tests for FindFirstFileExA with FIND_FIRST_EX_CASE_SENSITIVE flag. 2014-10-02 20:31:12 +02:00
Sebastian Lackner 20b5c99f11 kernel32/tests: Add tests for FindFirstFileExA with FIND_FIRST_EX_LARGE_FETCH flag. 2014-10-02 20:30:58 +02:00
Frédéric Delanoy 1e214eb5d3 Assorted spelling/grammar fixes. 2014-10-02 16:58:53 +02:00
Alexandre Julliard 5afbb6ba9e kernel32/tests: Fix overlapped status checks for 64-bit. 2014-10-01 21:22:25 +02:00
Andreas Fuchs ddeab7e564 kernel32: Ignore flags on FindFirstFileExW. 2014-09-29 18:54:30 +02:00
Francois Gouget 0dd5cb1cef Assorted spelling fixes. 2014-09-29 10:36:36 +02:00
Alexandre Julliard 553ba810b8 kernel32: Pass the correct completion values in ReadFileScatter and WriteFileGather.
Test case based on a patch by Guo Jian.
2014-09-10 13:49:56 +02:00
Sebastian Lackner 652f5d9b87 kernel32/tests: Add additional tests for multithreaded partial reads from named pipes. 2014-09-04 20:21:03 +02:00
Sebastian Lackner e65a618538 kernel32/tests: Add tests for partially received pipe messages after calling SetNamedPipeHandleState. 2014-09-04 20:21:03 +02:00
Sebastian Lackner e4551eee46 kernel32/tests: Add basic tests for partially received pipe messages (ERROR_MORE_DATA). 2014-09-04 20:21:03 +02:00
Sebastian Lackner 36debbe80f kernel32/tests: Ensure that pipe tests read the full pipe content. 2014-09-04 20:21:03 +02:00
Sebastian Lackner 03f3ed89f3 kernel32/tests: Add some even more basic pipe tests without call to PeekNamedPipe. 2014-09-04 20:21:03 +02:00
Nikolay Sivov 7b7d8374a4 ntdll: NtWaitForMultipleObjects()'s third arguments means 'wait_any', not 'wait_all'. 2014-09-01 13:03:07 +02:00
Alexandre Julliard ea1689e7b0 kernel32: Add detection of fake dlls when determining a binary type. 2014-08-22 12:44:24 +02:00
Sebastian Lackner 8f9df3afde kernel32/tests: Always allow only one correct test result, add todo_wine where necessary. 2014-08-21 18:02:30 +02:00
Sebastian Lackner 3e23aa5769 kernel32/tests: Add better handling for test failure in test_readfileex_pending. 2014-08-21 18:02:30 +02:00
Sebastian Lackner 55396b7018 kernel32: Implement SetNamedPipeHandleState.
Based on a patch by Adam Martinson.
2014-08-21 18:02:29 +02:00
Sebastian Lackner 9e66e97db8 kernel32: Implement GetNamedPipeHandleState.
Based on a patch by Adam Martinson.
2014-08-21 18:02:28 +02:00
Thomas Faber 7865b1a277 kernel32: Do not omit mandatory argument to DeviceIoControl. 2014-07-21 11:55:35 +02:00
Nikolay Sivov 509bdae8e2 kernel32/tests: Skip working tests properly. 2014-07-18 19:13:39 +02:00
Nikolay Sivov ed9e030456 kernel32: Properly implement EnumSystemGeoID(). 2014-07-15 15:29:39 +02:00
Nikolay Sivov 17777c8497 kernel32: Implement GEO_PARENT for GetGeoInfo(). 2014-07-15 15:29:03 +02:00
Nikolay Sivov b4acc62e63 kernel32: Partially implement GetGeoInfo(). 2014-07-11 12:22:26 +02:00
Grazvydas Ignotas 4f62801aee kernel32: Don't return uninitialized values on failures. 2014-07-09 09:28:32 +02:00
Alexandre Julliard 18d410dec1 tools: Don't include wine/unicode.h if not necessary. 2014-07-08 17:00:22 +02:00
Austin English 149d60318f kernel32: Initialize return value in CreateSemaphoreExW. 2014-07-08 10:35:17 +02:00
Austin English 2f3fc38ee0 kernel32: Add stubs for GetFirmwareEnvironmentVariableA/W. 2014-06-30 22:04:53 +02:00
Nikolay Sivov 3a2db918d9 kernel32: Added support for C3_HIGHSURROGATE/C3_LOWSURROGATE in GetStringTypeW(). 2014-06-30 22:04:52 +02:00
Piotr Caban 4eaa85ad56 kernel32: Fix typo in enum_locale_ex_proc. 2014-06-25 14:42:29 +02:00
Alexandre Julliard 500bbb3e9a libwine: Update the codepage tables to Unicode 7.0.0. 2014-06-23 16:41:52 +02:00
Sebastian Lackner 0114be0978 kernel32: Process DBG_RIPEXCEPTION events like regular exceptions. 2014-06-23 10:18:39 +02:00
Sebastian Lackner c936e505e5 kernel32/tests: Add missing ReleaseActCtx() calls. (Valgrind). 2014-06-23 10:18:13 +02:00
Sebastian Lackner cfd09b0967 ntdll: Fix leaking activation context when terminating via exit_thread(). (Valgrind). 2014-06-23 10:17:26 +02:00
Sebastian Lackner e5e4ef07b6 kernel32/tests: Add missing HeapFree() in doChildren(). (Valgrind). 2014-06-23 10:12:18 +02:00