As this is *recovered* code from what I had in my local trunk before my HDD crash that occurred last month, this is almost pure code without most of the comments (this especially concerns the MAIN_LoadSettings function).
The 10% code that is not restored yet concerns the reader/writer code for program group files, and it will be committed separately later. This (missing) code is the core of progman; without it progrman does nothing interesting apart from displaying its main window (and its utility dialogs).
svn path=/trunk/; revision=71317
- Don't access device control IRPs after handing them off to a worker routine that has potentially already freed them.
CORE-11229 #resolve
svn path=/trunk/; revision=71316
Cherry pick d71baf195715601212a2043f153400a964da6a18: Don't remove an entry list twice in add_to_space_list()
This avoids linked list entry twice removal
CORE-11057
svn path=/trunk/; revision=71315
Cherry pick aa04ca0ea4cadb0c70ff6d659916cc98b7b02c27: uninit: don't free roots before FCBs are freed
This avoids use-after-free on shutdown
svn path=/trunk/; revision=71314
- Create a wrapper version of HalpEndSoftwareInterrupt that frees its stack before calling the noreturn version of the next software interrupt handler. Fixes excessive stack usage when DPCs are queued in quick succession.
CORE-11123 #resolve
svn path=/trunk/; revision=71307
- Keep track of physical pages allocated for special pool, and respect the initially calculated MiSpecialPagesNonPagedMaximum
svn path=/trunk/; revision=71304
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