- co_IntSendMessageWithCallBack is called for two reasons; for messages that originate from win32k and from user mode when using Callbacks.
For both cases do not do anything with the sendqueue member of message struct and do not add the message to the senders dispatch message list.
- In msgqueue related functions, check if the message is a nowait messages before attempting to remove and entry from the dispatch message list as it doesnt exist.
- Fixes a NonPagedPool corruption that was occurring on regtest bootcd. Thanks Caemyr for testing.
svn path=/trunk/; revision=47849
Merge from amd64 branch:
44634: Make x86 specific optimizations x86 specific, use macros otherwise. (Samuel Serapion)
44639: Try to fix numerous pointer to ULONG casts. (Samuel Serapion)
47846/47847: Remove all the byteswap "optimisations" and use portable RTL byteswap functions (Timo Kreuzer)
svn path=/trunk/; revision=47848
- Use the correct offset of ROOTHUB2_CONFIGURATION_DESCRIPTOR and ROOTHUB2_INTERFACE_DESCRIPTOR to calculate needed buffer sizes. Fixes a buffer overflow crash.
svn path=/trunk/; revision=47845
- undefine macros that are defined by DDK headers, before implementing the functions
- add missing definitions for amd64
svn path=/trunk/; revision=47838
Added a library containing GUIDs for PnP notifications
[BUGCODES]
Added missing bugcheck code for PnP manager
[NTOSKRNL]
- Implemented FsRtlNotifyVolumeEvent()
- Implemented IoReportTargetDeviceChange(), IoReportTargetDeviceChangeAsynchronous()
- Craplemented PpSetCustomTargetEvent() to match our actual PnP manager notifications system. This is to be rewritten
- Added support for custom notifications in IopNotifyPlugPlayNotification()
- Added use of FsRtlNotifyVolumeEvent() in RawUserFsCtrl() to notify volume state changes
- Added use of IoEvent library to ntoskrnl
[FASTFAT]
- Added use of FsRtlNotifyVolumeEvent() when successfully mounting a volume
Finally, purpose of that patch is to implement volumes events notifications. Behaviour and implementation is correct till PpSetCustomTargetEvent(). The PnP notifications manager should be rewritten to match Microsoft's one. Furthermore, it appears that in Windows, those notifications are asynchronous.
svn path=/trunk/; revision=47837
- Dequeue the timer earlier so the timer queue will be in a valid state if any timers are modified during the miniport's timer callback
svn path=/trunk/; revision=47825
- Resource translation isn't very effective when we don't store the translated value in the translated descriptor (Fix a typo)
svn path=/trunk/; revision=47815
Changelog should have been:
[GDI32]
- Use default LOGFONT in EnumFontFamilies if none is given.
+ ~3000 gdi32:font winetests
svn path=/trunk/; revision=47802
- Use the current partition descriptor to check for container partitions. Logical units in extended partitions become visible again but you cannot access them yet.
This fixes the first half of bug #2564.
svn path=/trunk/; revision=47799
- Fix infinite loop
- Should fix gabriel_it and igorko1 problem with KsStudio
- Add more debugging code to DumpFilterDescriptor
svn path=/trunk/; revision=47786
Set registry values 'PathName' and 'SystemRoot' in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion.
This fixes bug #4414.
svn path=/trunk/; revision=47784