Fix the most stupid bug ever in ReactOS history (at least!).
Dear Pierre, you pretend you're modifying the FileObject->FileName field, but, as you were told in the early when you learnt C, you're at that point in your code dealing with a local copy of the unicode string. So, if modifying the Buffer field is fine, because it's a pointer to memory zone, containing the wchar string, modifying the Length field is totally pointless because it won't magically modify the unicode string in the file object, and will just be forgotten as long the function will be unstacked.
So REALLY modify the file object. VfatSetRenameInformation receives less garbage information now...
svn path=/trunk/; revision=63049
[SHELL32]
* Move the IID_NULL_PPV_ARG macro to the shobj_undoc header, next to the (also ros-specific) IID_PPV_ARG macro, so that it can be used elsewhere.
[SHELL32]
* Make use of IID_NULL_PPV_ARG in all the calls to GetUIObjectOf, and fix one instance of mismatched riid/pointer.
CORE-7330
svn path=/branches/shell-experiments/; revision=63044
Implement BaseSrvDisconnect and BaseSrvCleanupVdmRecords, which will remove VDM console and DOS records
which have been left behind by a terminated ntvdm process.
Implement the "VDM voodoo" in BaseSrvCreateProcess. It's supposed to store the process ID of the VDM
in the VDM console record.
Fix minor bugs.
Add function declarations to the header file.
svn path=/branches/ntvdm/; revision=63042
When the CsrProcessCreateNewGroup (~= CREATE_NEW_PROCESS_GROUP) flag is set, it means that we are creating a new process group leader, and not the reverse :P
svn path=/branches/ntvdm/; revision=63041
GetConsoleAliasesLength returns a DWORD (and the len variable *is* a DWORD). Do not check for negative values.
Patch by André Guibert de Bruet.
CORE-7964 #resolve #comment Fixed in revision 63037, cheers!
svn path=/trunk/; revision=63037
Use the proper Highlight pen to highlight the cards (for any cards game using the cardlib library).
Patch by Victor Martinez Calvo.
CORE-8118 #resolve #comment Committed in revision 63036, thanks!
svn path=/trunk/; revision=63036
- Fix dereferencing potential NULL pointers in ConDrvReadConsole() and ConDrvChangeScreenBufferAttributes();
- Fix a wcsncat in ConSrvOpenUserSettings()
Patches by Victor Martinez Calvo
CORE-8122 CORE-8123 #resolve #comment Fixed in revision 63035, cheers ;)
svn path=/trunk/; revision=63035
Implement part 2/3 (first part was in ntoskrnl, remember ;-)) of renaming support in ReactOS.
Here, we implement support for SL_OPEN_TARGET_DIRECTORY for IRP_MJ_CREATE in fastfat. The code is not the best ever, but we can't do miracles with fastfat.
This fixes a few tests in KmTests:IoCreateFile and also shows failures I still don't get and that will require deeper attention.
Last part will be to effectively bring support of FileRenameInformation in IRP_MJ_SET_INFORMATION. But this is yet another story.
svn path=/trunk/; revision=63034
* Make use of the IID_PPV_ARG for typesafe interface return pointers, and a few other cosmetic changes.
CORE-7330
svn path=/branches/shell-experiments/; revision=63033
- Use correct parent key instead of an uninitialized handle in INetCfgComponentControl_fnApplyRegistryChanges
CORE-8115 #resolve
svn path=/trunk/; revision=63032
- Moved to new menu structures, synced in wine code and started first phase to server side. Resulting that more tests are running and failing less. Unplugged ntuser bad functions.
- See CORE-5605, CORE-7447, CORE-7967, CORE-8098 and CORE-8107
svn path=/trunk/; revision=63027
Don't define STANDALONE by default.
Don't quit ntvdm after it becomes the last process on the console if a DOS app is still running.
svn path=/branches/ntvdm/; revision=63024
Implement IopOpenLinkOrRenameTarget(), IopGetBasicInformationFile(), IopGetFileInformation().
This implements renaming support in kernel via Nt/ZwSetInformationFile, FileRenameInformation class.
This is only the first part to get renaming properly work in ReactOS.
As exposed by IopOpenLinkOrRenameTarget(), as second step, it's mandatory to implement support for parent directory open in FSDs (FastFAT at first). See tests for IoCreateFile in kmtests. I've some kind of patch for that purpose.
Finally, as third step, it's required to implement support for FileRenameInformation in the FSDs. That part is likely to require way much more work (thanks fastfat <3).
Regarding commented out code, I invite you to read as reference: http://fsfilters.blogspot.fr/2012/07/flags-of-fileobjects-part-v.html
R. Nagar's book is still a good reference regarding since (if we forget bugs in code examples and stuff that got renamed).
svn path=/trunk/; revision=63011