- Use UNICODE markers for characters (the L'.' symbol for example) (i.e. fix code originating from Wine).
- Accept NULL Path/FileName in RtlDosSearchPath_U (fixes some ntdll_apitest tests, see after).
Fixes for RtlGetFullPathName_Ustr:
==================================
- Rework RtlGetFullPathName_Ustr by "reusing" little parts of the code of our old RtlGetFullPathName_U coming from Wine (and then make RtlGetFullPathName_U call RtlGetFullPathName_Ustr instead).
- Include the get_full_path_helper code into RtlGetFullPathName_Ustr and NT'ify it, and fix it too:
* Fix skipping trailing path separators (slashes / backslashes) at the end of pathes.
* Zero-out the destination buffer
* Fix retrieving the "Short Name" (ie. the file name) out from the given full path name.
* Fix remaining UNC path handling (ie. correctly remove trailing points, spaces, in UNC paths).
They fix the following tests:
* kernel32:FindFiles (6 failures to full success)
* ntdll:RtlDosPathNameToNtPathName_U (4 failures to full success)
* ntdll:RtlDosSearchPath_U (6 failures to full success)
* ntdll:RtlGetFullPathName_U (8 failures down to 2 failures because we don't correctly NULLify the user buffer when trimming unneeded chars)
* ntdll:RtlGetFullPathName_UstrEx (6 failures down to 2 failures for the same reasons as the previous test)
To Do: Finish to NT'ify the code originated from Wine, fix NULLification of the user buffer (when trimming unneeded characters), and "clean" the code ie. remove extra DPRINTs and added FIXMEs and NOTEs comments.
svn path=/trunk/; revision=59366
Return STATUS_OBJECT_NAME_INVALID instead of STATUS_BAD_NETWORK_PATH, fixes some tests (kernel32:FindFiles in particular).
svn path=/trunk/; revision=59364
- Make MSVC analyzer happy by initializing the event before calling IoBuildDeviceIoControlRequest. Patch by Ivan Rodionov (overclocker at list dot ru).
CORE-7328 #resolve #comment Committed, thanks.
svn path=/trunk/; revision=59352
- Add all runs dumping to aid in development.
- Do not try to add a mapping run with 0 LBN. Zero and negative LBNs are forbidden.
- Rework other tests to work as expected (plumb a hole).
svn path=/trunk/; revision=59347
Remove a spurious cast, and add a note for the pInputControl parameter of ReadConsole.
[CONSRV]
- Move some input/output console function helpers to condrv.
- The way we notify for the presence of new input data, or for console pausing/unpausing, should be reconsidered (who should do this? The console driver? The active front-end?)
svn path=/trunk/; revision=59345
Use 286 mode in softx86.
Implement "Get / Set Disk Transfer Area".
Start implementation of PS/2 controller.
Improve hardware interrupts. Fix CLI / STI / HLT instruction support.
svn path=/branches/ntvdm/; revision=59343
- Develop a new implementation of Large MCBs. It's based on (tested-in-real-world) implementation from Captive NTFS project, which is improved, enhanced, cleaned and beautified, using our own tests.
There are some test failures and some fishy things there (you may notice them when a variable name doesn't follow ReactOS kernel functions naming convention), however it's way better than the previous implementation.
Link to the original source file: http://git.jankratochvil.net/?p=captive.git;a=blob;f=src/libcaptive/fs/mcb.c;h=62b524630af82c9124c2c9b4eea7c4f0128c2cc4;hb=HEAD
svn path=/trunk/; revision=59342
Fix the VDM DOS memory manager to use the segment of the data portion of the block, rather than the MCB itself.
svn path=/branches/ntvdm/; revision=59338
Never EVER process instructions INSIDE a debug macro (e.g. ASSERT) because when compiling in Release Mode, the code isn't executed at all.
Fix that. See revision r59310 for more details.
svn path=/branches/ntvdm/; revision=59314
* Do not generate empty Vtbl structure for empty interfaces. Brought to you by Thomas Faber.
* Patch is pending upstream.
svn path=/trunk/; revision=59312