Improvements to the file types property page:
- Always show the selected file type.
- Set the focus to the listview control when the file types page gets activated.
- Enable/disable the Delete button for the initial file type selection too.
svn path=/trunk/; revision=71300
- Use the correct size of ServiceBuffer in getnameinfo. Patch by Víctor Martínez Calvo. CID 716150
CORE-11214 #resolve
svn path=/trunk/; revision=71293
- Add missing null termination for the line buffer in GetProtoGetNextEnt. Patch by Víctor Martínez Calvo. CID 716700
CORE-11218 #resolve
svn path=/trunk/; revision=71292
- Work around a ROS bug (CORE-11206) by doing some better bounds checking.
- Silence a VAD warning by checking for NULL instead of blindly passing mem to NtUnmapViewOfSection
- Rewrite module type lookup code to use an enum and to return the found header.
svn path=/trunk/; revision=71290
- In RtlpGrowBlockInPlace, copy the heap block's user value if the old block has the HEAP_ENTRY_EXTRA_PRESENT flag, instead of looking at the flags of the following block (where this will never be set).
CORE-11196 #resolve
svn path=/trunk/; revision=71279
Improvements to the file type property page:
- Read the EditFlags value for each file type from the registry.
- Sort the file type list by extension and description.
- Do not add a file type to the list if the FTA_Exclude flag is set for the file type.
- Disable the delete button if the FTA_NoRemove flag is set fot the file type.
- Set the FTA_Exclude flag for the dllfiles, lnkfiles and piffiles file types.
- Set the FTA_NoRemove flag for the batfile, cmdfile, comfile and exefile file types.
svn path=/trunk/; revision=71275
In case we're performing an in-place move (ie, in the same directory), if short name matches before and after, keep it.
This avoids that a file with long file name sees its short name changing on normally 'non-effect' renames.
For instance, in case of case-change only rename, short name will now be preserved.
See ya, you 7y old bug :-)
CORE-3875 #resolve #comment Fixed with r71270
svn path=/trunk/; revision=71270
The onliner:
- Move to next entry by applying the offset to the previous entry, and not to the first entry
This fixes enumerating ADS from files with 3+ streams. Previously, doing dir /R in a directory would have lead to a cmd crash.
CORE-11164 #resolve #comment Fixed by r71245
svn path=/trunk/; revision=71245
- Move recyclebin static lib in the shell32 folder and name it shellrecyclebin alongside shelldesktop and shellmenu static libs.
svn path=/trunk/; revision=71243
- lnk files are .. files so don't pretend that CDrivesFolder and CControlPanelFolder can contain lnk files.
- Don't create a full pidl just to parse it right away (which is a costly operation) when an IShellLink is queried from a folder.
- Fix a bug in CDesktopFolder::GetDisplayNameOf that was exposed by changes above.
svn path=/trunk/; revision=71237
Cherry pick a change from r71224 by Trevor:
- Don't fail too early in NtfsCreateFile() when requesting write/supersede operation. This allows already setting appropriate error in certain cases and making the driver more consistent
svn path=/trunk/; revision=71229
- Remove IExtractIconA_Constructor and rename IExtractIconW_Constructor to GenericExtractIcon_CreateInstance which will handle both A and W.
- Make GenericExtractIcon_CreateInstance accept a pointer to a IShellFolder and a simple pidl.
- Avoid using SHGetPathFromIDListW. Use ILGetDisplayNameExW instead. May make loading icons for folders and exe files slightly faster as it does fewer I/O and less allocations.
svn path=/trunk/; revision=71227
- Disentangle icon extraction for control panel. Add CCPLExtractIcon_CreateInstance and isolate control panel handling in CControlPanelFolder.cpp.
svn path=/trunk/; revision=71225
- Don't leak memory in KspValidateConnectRequest(), patch by Victor Martinez
- Also compute connect medium ID string only twice (could be even computed once) instead of doing so in each loop iteration
CORE-11099 #resolve #comment Committed in r71221
svn path=/trunk/; revision=71221
- Get rid of CPrintersExtractIconW and add CPrintersExtractIconW_CreateInstane which creates and initializes CExtractIcon.
- Also add CNetFolderExtractIcon_CreateInstance and CRecyclerExtractIcon_CreateInstance.
svn path=/trunk/; revision=71217
- Add an overload of SHSetStrRet which loads strings by default from shell32.
- Remove some dead code fomr CDrivesFolder.
svn path=/trunk/; revision=71213
- Accept parsing paths like "C:". Also simplify CDrivesFolder::ParseDisplayName a bit.
Note: trying to run "c:" from the run dialog doesn't have the right result due to a bug in ShellExecute.
svn path=/trunk/; revision=71212
Addendum to r69601:
host-tools are "no longer required" but actually still exist.
Add the CMakeCache cleanup for them.
svn path=/trunk/; revision=71204
Don't remove an entry list twice in add_to_space_list().
This fixes a BSOD when trying to create a new file on a Btrfs volume.
Already sent upstream. Delayed due to inactivity.
CORE-11057 #resolve #comment Fixed with r71202
svn path=/trunk/; revision=71202
- Add a list of hardcoded tags, for all versions up to win7 they are checked against windows.
- Update SdbTagToString with a few missing strings
- Hardcode the used version to Win7 for now, as backporting these strings would not make much sense.
svn path=/trunk/; revision=71200
- Stub the Property pages
- Disable some code that prevented the property pages from working (CORE-11140)
- Leave the menu item disabled for now, since a dialog that does not do anything will only confuse people (CORE-11141)
svn path=/trunk/; revision=71192
- Add an apitest for our delayload functions.
- Improve the delayload (mainly the failure cases, throw exceptions where expected etc).
- Add some tests for advanced delayload features (currently blocked on CORE-6504 and CORE-10957)
svn path=/trunk/; revision=71190
Use the PairCount variable of the MCB to store the current amount of runs in the table. This will be properly used later on.
CORE-11002
svn path=/trunk/; revision=71178
Modify the ret8 interrupt return path in KiTrapExitStub, so that nested interrupts (e.g. as a result of an interrupt storm from a broken driver) will work more "like on Windows", i.e., now the broken driver will not cause stack exhaustion anymore, but a proper system hang! And it will be an even more efficient system hang than Windows has! This is not the '90s. You can't just walk up and crash the system, you have to do something cool first and do it properly "like Windows does", even if you're not using the same assembly instructions.
svn path=/trunk/; revision=71174