* Don't include the whole NDK for just one header.
* This allows us to depend on 49 headers less, and it shrinks the PCH by 2MB.
svn path=/trunk/; revision=53217
Fix and EnumDependentServices[A/W]:
- If lpServices is NULL or cbBufSize is less than sizeof(ENUM_SERVICE_STATUS/W) pass a pointer to an internal status buffer to REnumDependentServicesA/W.
svn path=/trunk/; revision=53214
- Store the correct buffer size for requests that aren't satisfied via the registry
- Fixes displaying the enumerator on the device manager property page
svn path=/trunk/; revision=53212
- OkToClose procedure (OB_OKAYTOCLOSE_METHOD) returns BOOLEAN, not NTSTATUS
- Check ppi for NULL before dereferencing it in IntWinstaOkToClose (it is NULL, if we do our job of cleaning up the win32 process properly)
- Set the win32 process info to NULL on process cleanup
- Free THREADINFO and PROCESSINFO instead of leaking them
- Set NULL cursor, when the last thread is cleaned up in win32k, so we don't call UserSetCursor() in the process cleanup, when we don't have a THREADINFO anymore. This should hopefully fix a crash of MSVC builds.
- Remove unused UserGetNextHandle function
- Fix some warnings
svn path=/trunk/; revision=53211
Fix EnumServiceGroupW and EnumServiceStatus[A/W]:
- If lpServices is NULL or cbBufSize is less than sizeof(ENUM_SERVICE_STATUS/W) pass a pointer to an internal status buffer to REnumServiceGrouW or REnumServiceStatusA/W.
svn path=/trunk/; revision=53210
Partly sync static.c with wine, reduce diff between ros and wine code. The leak fix is taken care of. Also go back from Get/SetWindowLongPtr to Get/SetWindowLong for LONG values. Using the *Ptr version is wrong for LONG values!
svn path=/trunk/; revision=53204
- Display the loading message for drivers loaded by the PnP manager during boot
- Maybe now NDIS.SYS won't get all the blame for boot hangs ;)
svn path=/trunk/; revision=53203
Fix QueryServiceConfigEx[A/W]:
- If lpServiceConfig is NULL or cbBufSize is less than sizeof(QUERY_SERVICE_CONFIGA/W) pass a pointer to an internal status buffer to RQueryServiceConfigA/W.
- Revert r53153 and r53154. Adding 'in' and 'unique' attributes is NOT an option because this is not compatible with Windows.
svn path=/trunk/; revision=53202
Fix EnumServicesStatusEx[A/W]:
- If lpServices is NULL or cbBufSize is less than sizeof(ENUM_SERVICE_STATUS_PROCESS) pass a pointer to an internal status buffer to REnumServicesStatusExA/W. Adding 'in' and 'unique' attributes in the idl file is NOT an option because this is not compatible with Windows.
- Check the InfoLevel.
svn path=/trunk/; revision=53201
- Fix a massive memory leak of our entire TDI entity ID database after each call to getInterfaceInfoSet
- Fix another massive leak of our entire TDI interface table after each call to getInterfaceInfoByIndex and getInterfaceInfoByName
- Fix some uninitialized variable warnings
- Explorer no longer leaks horrendous amounts of memory (about 1 MB per minute even without network activity) when the network status icon is in the system tray
svn path=/trunk/; revision=53190
- Rewrite receive code to make it much simpler, handle some corner cases that weren't treated correctly, and fix the data corruption bug
- Downloaded successfully (no data corruption): OpenOffice 2.4, OpenOffice 3.3, BitTorrent 7.2.1, Firefox 5, Firefox 3.6, Firefox 3, Firefox 2, Abyss Web Server, Opera 9.64, and Opera 11.01
svn path=/trunk/; revision=53189
- Fix a buffer overflow when the packet queue has more packets than the receive request can take
- Remove an extra variable
svn path=/trunk/; revision=53188
- Reapply the switchtype patch from widl-ros.diff. This patch should be sent upstream to wine.
See issue #6406 for more details.
svn path=/trunk/; revision=53187
- Implement SO_LINGER and SO_DONTLINGER for getsockopt and setsockopt
- Fix and add buffer size checks
- Yes, we've gone this long without SO_LINGER support
svn path=/trunk/; revision=53174
- use -Oif flag to produce modern (!) NT4 stubs, with Microsoft extensions to IDL language.
[ADVAPI32]
- Initialize *pcbBytesNeeded, as it's marked as [in], it needs to be in the 0-8k range before being passed to RPC.
Now 2nd stage got his mouse and keyboard again.
svn path=/trunk/; revision=53171
Fix MSVC warning about signed/unsigned mismatch. In this case it was not a bug, because the compiler implicitly casts to unsigned, when signed and unsigned are compared, so (-1 < 0x23U) is false.
svn path=/trunk/; revision=53163