[NTOS]: Implement and call MiLocateKernelSections. Pool code and paging paths will require this information later. Loader work done for now.
svn path=/trunk/; revision=46989
[NTOS]: MmCheckSystemImage: Check for 32-bit/64-bit image/OS mismatch.
[NTOS]: MmCheckSystemImage: Return invalid checksum if couldn't get the NT header from the image.
[NTOS]: MmCheckSystemImage: Map images as SEC_IMAGE instead of SEC_COMMIT, and simply read the size off that way.
svn path=/trunk/; revision=46988
[NTOS]: Use MM_SYSLDR_ defines instead of magic pointer casts. Use appropriate pool tags.
[NTOS]: Set the LoadedImport count early-on during image referencing, so that failure will correctly de-reference the imports. By setting it to zero, failures would've leaked driver-dependent DLLs already loaded but now useless.
[NTOS]: Do the same checks as Windows to avoid drivers linked with user-mode DLLs.
[NTOS]: Allow "coverage" and "irt" to be linked with Win32K drivers as well.
[NTOS]: When the linker is fixed not to generate corrupt drivers, add the appropriate code to scan IMAGE_DIRECTORY_ENTRY_IAT for updating thunks. A hack exists in ReactOS now to permit loading these hacked drivers, but Windows is not so generous and will crash with a ReactOS driver.
svn path=/trunk/; revision=46987
- Replace the broken CM_RESOURCE_LIST_SIZE with a better function that actually works with resource lists that have device-specific data in them (fixes missing device specific data when resources are retrieved with IoGetDeviceProperty)
- Separate the resource code out of pnpmgr.c and into pnpres.c
- Simplify resource assigning to simply calling one function, IopAssignDeviceResources, which takes care of the registry configuration, translation, etc.
- Set the DNF_NEED_ENUMERATION_ONLY flag only AFTER the device is actually started not before
- Set DNF_START_FAILED if IRP_MN_START_DEVICE fails
- Fix a bug in IoReportDetectedDevice that wrote the AllocConfig value to wrong place
svn path=/trunk/; revision=46983
Update text and background brush properly. Fixes wrong colors in radio buttons in Firefox. Fix by Jerome Gardou.
See issue #5311 for more details.
svn path=/trunk/; revision=46980
[NTOS]: Call MiEnablePagingOfDriver from MmLoadSystemImage and implement it. All the work is done other than actually enabling paging, which requires system working set support.
[NTOS]: Implement MiWriteProtectSystemImage and MiComputeDriverProtection. All the work is done other than actually setting the bits on the pages, since I wanted to avoid too many changes.
[NTOS]: MmCheckSystemImage returns STATUS_INVALID_IMAGE_PROTECT, not STATUS_INVALID_IMAGE_FORMAT, so the branch in MmLoadSystemImage needs to check for the correct status code.
[NTOS]: Support FLG_SHOW_LDR_SNAPS for the kernel loader.
svn path=/trunk/; revision=46977
[NTOS]: Minimal stubbed support for some large page functionality in case it gets implemented later and these things would've been ignored. One critical change is that now the MmProcessList is initialized, and the system process is added to it. Other processes should be added later.
[NTOS]: Add stubbed support for parsing the registry list of drivers that should have large pages enabled.
[NTOS]: Initialize the loaded module list before working set work.
[NTOS]: Reload the boot drivers much earlier, as part of ARM3 initialization.
[NTOS]: Start doing some minor MmResidentAvailablePages accounting during bootup.
[NTOS]: Start doing the math required for computing the appropriate MmSystemCacheWsMinimum on the booting system (based on RAM).
[NTOS]: Now that we use the HAL heap, add the code to scan it for I/O mappings. These are dangerous because we need to sync up caching attributes (not yet used in ReactOS, so not a problem for now).
[NTOS]: Add more header definitions, and helper definitions such as PDE_MAPPED_VA instead of doing the math by hand.
[NTOS]: Move MmPageEntireDriver and MmResetDriverPaging to sysldr.c since drvmgmt.c is more for Driver Verifier-style functionality.
svn path=/trunk/; revision=46971
- Dmitry Timoshkov : Do not ask DrawFrameControl() to modify the passed in rectangle.
- Nikolay Sivov : Set WM_EXITMENULOOP wParam same way as for WM_ENTERMENULOOP.
svn path=/trunk/; revision=46961
- Export Wow64* functions in kernel32, because 32bit Windows also exports them.
- Sync ole32, oleaut32 with Wine-1.1.43.
svn path=/trunk/; revision=46959
- Simplify checks for success of ShellExecuteEx, field hInst may be an unreliable indicator according to http://msdn.microsoft.com/en-us/library/bb759784%28v=VS.85%29.aspx
- Fixes folder options control panel opening twice
See issue #4910 for more details.
svn path=/trunk/; revision=46907
- Add support for deleting multiple files from the context menu
- Fix error debug print
See issue #4383 for more details.
svn path=/trunk/; revision=46900
- Skip the last unnecessary wait in a series of pings
- Patch by Rafal Harabien, <rafalh1992 AT o2 DOT pl>
See issue #5300 for more details.
svn path=/trunk/; revision=46898
- Create a font even if no registry settings were loaded
- Patch by Rafal Harabien, <rafalh1992 AT o2 DOT pl>
See issue #4066 for more details.
svn path=/trunk/; revision=46897
- Don't autoequip listview item selections upon item creation
- Handle selections via SetItemState, select newly added items that way
- Fixes current background wallpaper item not being selected initially and selection being ignored later
See issue #5030,5116 for more details.
svn path=/trunk/; revision=46887