Commit Graph

1200 Commits

Author SHA1 Message Date
Sebastian Lackner aab0d25a49 ntdll: Add support for ATL thunk 'MOV this,ecx; JMP func'. 2014-10-21 18:50:59 +09:00
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
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
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
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
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
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
Nikolay Sivov 3a2db918d9 kernel32: Added support for C3_HIGHSURROGATE/C3_LOWSURROGATE in GetStringTypeW(). 2014-06-30 22:04:52 +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 c936e505e5 kernel32/tests: Add missing ReleaseActCtx() calls. (Valgrind). 2014-06-23 10:18:13 +02:00
Sebastian Lackner e5e4ef07b6 kernel32/tests: Add missing HeapFree() in doChildren(). (Valgrind). 2014-06-23 10:12:18 +02:00
Alexandre Julliard c7eacd9e83 kernel32/tests: Silence some noisy traces. 2014-06-17 10:58:46 +02:00
Sebastian Lackner 270d66efc7 kernel32: Update VirtualAddress of resource section in write_raw_resources. 2014-06-17 09:04:15 +02:00
Akihiro Sagawa 80695cde4f kernel32: Return correct buffer size when returning DBCS characters. 2014-06-12 18:25:06 +02:00
Michael Müller 9602fa7a93 server: Fix return value for FSCTL_PIPE_WAIT if pipe does not exist. 2014-06-11 13:07:11 +02:00
Nikolay Sivov 5a8d73283c ntdll: Fix LdrLockLoaderLock()/LdrUnlockLoaderLock() on 64bit. 2014-06-11 13:05:39 +02:00
Jacek Caban 5ceb22714e ntdll: Use MAP_PRIVATE for copy on write mappings. 2014-05-13 12:27:32 +02:00
Jacek Caban ea950ac7cf kernel32/tests: Added more shared memory tests, exposing MAP_PRIVATE mapping for read only mapping problem. 2014-05-08 18:27:51 +02:00
Huw Davies 56019a4dc6 kernel32/tests: Fix test for win8 heap layout. 2014-05-02 13:45:00 +02:00
Frédéric Delanoy 2e5cb7aac8 Assorted spelling/grammar fixes. 2014-04-30 18:34:20 +02:00
Erich E. Hoover 32da6626f5 kernel32: Allow CompareStringEx LINGUISTIC_IGNORECASE flag. 2014-04-17 10:48:07 +02:00
Erich E. Hoover b0935ab811 kernel32: Allow CompareStringEx NORM_LINGUISTIC_CASING flag. 2014-04-17 10:48:04 +02:00
Erich E. Hoover 4b949510fb kernel32/tests: Add a variety of tests for CompareStringEx. 2014-04-17 10:47:58 +02:00