- Return the appropriate status code when encountering file system corruption
- When encountering corruption, print a message by default instead of breaking into the debugger
svn path=/trunk/; revision=69768
- Reimplement the SYSTEM.INI/WIN.INI tabs (they should be seen as 2 different instances of the same window; this would be cleaner to do in C++) with all the expected functionality working.
- Add TreeView helpers for moving/deleting branches.
- Add TreeView helpers for 3-state checkboxes, with support for Windows 2k3 and Vista+ with and without manifest, depending on the comctl32.dll version used by msconfig at runtime. In particular, take advantage of the TVS_EX_PARTIALCHECKBOXES extended style introduced on Windows Vista+.
- Just initialize once the uxtheme function pointers.
- Create the msconfig dialog box hidden and center it on screen before showing it (removes the flickering caused by the quick move).
- Use the correct 16x16 icon for the dialog title icon, adapted from a patch by Jared Smudde with suggestions by Ismael Ferreras Morezuelas.
CORE-9333
svn path=/trunk/; revision=69761
Check the size of RLE bitmaps, while decompressing. Fixes possible buffer overrun.
Patch by Kamil Hornicek
CORE-8735 #resolve
svn path=/trunk/; revision=69760
Restore saved DCs, when changing the DC owner. Otherwise there could be saved DCs with references to process owned resources, causing GDI object leaks.
Fixes assertion when closing iWisoft Video Converter
Also don't copy lSaveDepth and hdcSafe in DC_vCopyState, those must be handled manually.
CORE-10435 #resolve
svn path=/trunk/; revision=69759
Fix COMCTL32_VERSION definition.
[COMCTL32]
The comctl32 we currently have in trunk cannot pretend to be version 6+ (it was currently reporting version 6.82, aka something for Windows 20? ) Fix it and make it report 5.82 instead.
CORE-10457
svn path=/trunk/; revision=69755
Comment out for now in MCB the assert hit when attempting to write on an extX volume.
Aleksey, could you have a look at it?
CORE-10407 #comment Can you retry with r69750?
svn path=/trunk/; revision=69750
Improve the oplocks stubs:
- Always return success when FsRtlCheckOplock() is called: we deny oplock creation at FsRtlOplockFsctrl(), so the oplocks can only be fine.
- Always return TRUE when FsRtlOplockIsFastIoPossible() is called: we deny oplock creation at FsRtlOplockFsctrl(), so no oplock can prevent fastio from happening.
This enables (for real :-)) write support in extX FSD. Not 100% perfect though, as it hits an assert in MCB (but that's yet another story).
Full implementation to come later on.
CORE-10407
CORE-10442
svn path=/trunk/; revision=69742
- Initialize SepRmDbLock and create the system and anonymous logon sessions in Phase 0, right before the system process token is created.
- Implement functions to reference and dereference a logon session.
- Reference a logon session in SepCreateToken and SepDuplicateToken.
- Dereference a logon session in SepDeleteToken.
svn path=/trunk/; revision=69735
- Do not always print the usage when an error occurs. Print it only when a syntactic error happens.
- FAT volume labels are constituted of 11 chars (not 8!) which should be printable ASCII (in particular, >= 0x20) and in uppercase.
svn path=/trunk/; revision=69732
- Properly parse SymbolicLinkName (in particular, don't assume it's null-terminated) in IoSetDeviceInterface. Fixes IoDeviceInterface test failures and subsequent crashes due to memory corruption
CORE-9456
svn path=/trunk/; revision=69729
- Explicitely use UNICODE versions of OpenSCManager and OpenService.
- When OpenSCManager or OpenService fail, they return a NULL handle (not INVALID_HANDLE_VALUE).
svn path=/trunk/; revision=69719