- Use a palette created from the DIB infos for surface created through CreateDIBitmap(CBM_CREATEDIB)
CORE-8695 #comment Booting in 16bpp mode is now OK, but some problems remain when switching mode from 16bpp to 32bpp
svn path=/trunk/; revision=64993
- Fix a stupid buffer overflow I introduced in r64967.
- Take BITMAPCOREINFO into account when loading a cursor from file.
svn path=/trunk/; revision=64990
Updates for some softwares.
Fix several broken mirrors and replace the in theory working one for IrfanView.
Fix some sizes.
svn path=/trunk/; revision=64975
Improve configure script to allow passing multiple arguments, like "configure VSSolution RTC". Add a small help command ("help" or "/?"), allow passing CMake parameters like -DFOO:BOOL=TRUE after our custom parameters.
svn path=/trunk/; revision=64971
- Properly check for CBM_INIT bit in CreateDIBitmap.
- Take into account the fact that we could be passed a BITMAPCOREHEADER
CORE-8695
svn path=/trunk/; revision=64969
- Use CreateDIBitmap with the CDM_CREATEDIB undocumented flag to create alpha bitmaps. This permits to create display compatible yet 32bpp DDBs.
CORE-8695 #comment PLease retest, should be OK now.
svn path=/trunk/; revision=64967
- Move call to UserRegisterClass out of SEH. All parameters are kernel pointers, so exceptions here are critical kernel bugs that shouldn't be hidden.
CORE-8702 #resolve
svn path=/trunk/; revision=64964
- Keep track of the PDEV which we create a compatible bitmap for.
- Allow attaching a DDB to a DC if they are from the same PDEV
Fixes various problems after mode switching, including the infamous "Where is desk.cpl palette bitmap"
svn path=/trunk/; revision=64955
- Don't delete the device node for root enumerated device objects on failure. It's pointless, since IopEnumerateDevice will just recreate it, and more importantly it causes a use-after-free because IopFreeDeviceNode does not unset the DeviceNode member of the device object extension, so IopEnumerateDevice will try to access the freed node
- Set the device object's DeviceNode pointer to NULL in IopFreeDeviceNode
- Use consistent pool tagging for device nodes
CORE-8671 #resolve
svn path=/trunk/; revision=64950
Move the BIOS call buffer to physical address 0x4000, making another page available at the top, moving the margin down to 0x9E000. Should fix boot with machines that have a large EBDA.
CORE-8692 #comment please retest.
svn path=/trunk/; revision=64945
- Properly free classes small icon handles
- Do not use LR_SHARED when copying them from the large icon. There's no reason for them to outlive the class.
Should fix remaining failures in user32:class that I introduced.
svn path=/trunk/; revision=64939