- Correctly reallocate buffer in NetWkstaUserGetInfo. Fixes one of the many exceptions when running netapi32 tests with DPH.
svn path=/trunk/; revision=68897
- Rename SHELL32_BindToChild to SHELL32_BindToFS. Do not let it be used for guid items any more. Split SHELL32_GetCLSIDForDirectoryout of it and call it only when needed.
- Fix callers to use SHELL32_BindToGuidItem for guid items.
- Fix a bug in CFSFolder which marked folder items as files when a binding context was used.
svn path=/trunk/; revision=68885
- All shell folders must have the IPersistFolder. Hence their Initialize method is supposed to succeed for them to actually work.
svn path=/trunk/; revision=68884
- Make SHELL32_GetDisplayNameOfChild return the result via a STRRET. Fix all callers accordingly.
- Avoid any heap allocations if a shell folder needs to forward the GetDisplayNameOf call to a child.
svn path=/trunk/; revision=68877
- Remove SHELL32_GetItemAttributes for good. It is never a good idea to have one function that handles many types of pidls.
svn path=/trunk/; revision=68873
- When binding to a drive item try to initialize the new CFSFolder using IPersistFolder3. That allows us to get the path of the drive right from the pidl instead of getting a new reference to the CDrivesFolder and using GetDisplayNameOf for the pidl.
svn path=/trunk/; revision=68865
- Fix swapped parameters of KeSetIntervalProfile
- Calculate the correct bucket pointer in KiParseProfileList, and actually increment the counter
CORE-10066
svn path=/trunk/; revision=68859
Improve debugging experience when pressing Tab+k, at least with WinDBG, by breaking with a suitable control code (adopt the SysRq one even if we don't use SysRq key for breaking, but instead, Tab+k).
svn path=/trunk/; revision=68855
Addendum to r68851:
- Reset the state of the worker thread *after* having captured the data, not before.
- Fix the explanations given in comments.
svn path=/trunk/; revision=68854
- Remove superfluous dereference in NtCreateProfile
- Allocate the right size for KPROFILE object
- Don't leak the KPROFILE when deleting an EPROFILE
- Avoid some casts
CORE-10066
svn path=/trunk/; revision=68852
Implement the WinDBG Debugger Worker Thread, which is created inside a target process whenever one uses the ".process /i <addr>" (invasive debugging) command using WinDBG in kernel-mode debugging.
See https://www.microsoftpressstore.com/articles/article.aspx?p=2201303&seqNum=2 section "Switching the Current Process Context" (from the book "Inside Windows Debugging" by Tarik Soulami, pp.101-102) for more details.
The names of the variables must be kept as they are, because WinDBG (more exactly, dbgeng.dll) searches for them within the kernel symbols and retrieves their addresses (since those variables are not publicly exported).
svn path=/trunk/; revision=68851