Eric Kohl [Sun, 5 Jun 2011 13:26:43 +0000 (13:26 +0000)]
[MSPORTS]
Add missing definitions.
svn path=/trunk/; revision=52089
Kamil Hornicek [Sun, 5 Jun 2011 12:50:02 +0000 (12:50 +0000)]
fix build?
svn path=/trunk/; revision=52088
Eric Kohl [Sun, 5 Jun 2011 12:20:52 +0000 (12:20 +0000)]
[MSPORTS]
Implement ComDBGetCurrentPortUsage.
svn path=/trunk/; revision=52087
Cameron Gutman [Sun, 5 Jun 2011 02:16:45 +0000 (02:16 +0000)]
[IP/TCPIP]
- Add a Next member to CONNECTION_ENDPOINT to allow multiple connections to be associated with a single address file while not overwriting pointers, dereferencing other people's connection objects, and causing horrific amounts of memory corruption
- Add several sanity checks to prevent this from happening again
- Don't try dereference address files and connection endpoints in the free functions; there should be none associated since r52083 (sanity checks ensure this)
- Don't hold an extra reference to the address file when creating a listener; this reference is implicit
- This should greatly increase reliability of activities that open lots of sockets such as web browsing and running servers on ROS
- This also fixes most issues of not releasing a server port when the listener is closed
svn path=/trunk/; revision=52086
Eric Kohl [Sat, 4 Jun 2011 21:07:28 +0000 (21:07 +0000)]
[MSPORTS]
Protect the COM database from concurrent access.
svn path=/trunk/; revision=52084
Cameron Gutman [Sat, 4 Jun 2011 20:31:05 +0000 (20:31 +0000)]
[AFD]
- Disassociate the connection from the address file before closing them
svn path=/trunk/; revision=52083
Timo Kreuzer [Sat, 4 Jun 2011 16:59:09 +0000 (16:59 +0000)]
[DDK/XDK]
Merge some changes to wdm.h back to xdk
svn path=/trunk/; revision=52080
Timo Kreuzer [Sat, 4 Jun 2011 15:42:32 +0000 (15:42 +0000)]
[NTOSKRNL/DDK]
- add definition for KeMemoryBarrierWithoutFence
- add x64 version of KeMemoryBarrier and some related defines
- Use KeMemoryBarrierWithoutFence in spinlocks as suggested by Alex
svn path=/trunk/; revision=52079
Timo Kreuzer [Sat, 4 Jun 2011 12:33:54 +0000 (12:33 +0000)]
[NTOSKRNL/HAL]
- Add explicit memory barriers to KxAcquireSpinLock, KxReleaseSpinLock inline functions and KeTryToAcquireQueuedSpinLock, KeTryToAcquireQueuedSpinLockRaiseToSynch in the UP case. This will prevent the compiler from reordering memory access instructions across the boundaries of these functions, even when being inlined.
- Use the inline functions in x64 spinlock functions, too
svn path=/trunk/; revision=52078
Eric Kohl [Sat, 4 Jun 2011 08:03:51 +0000 (08:03 +0000)]
[INF]
- Add an .inf file to register the unknown device class.
svn path=/trunk/; revision=52077
Olaf Siejka [Fri, 3 Jun 2011 13:34:29 +0000 (13:34 +0000)]
[NTOSKRNL]
Hackfix to r52065:
- Comment out call to IopDecrementDeviceObjectRef in IopLoadFileSystemDriver, on Pierre's request. Needs more research. Should fix boot and testcd ASSERT in 2nd stage.
svn path=/trunk/; revision=52075
Gabriel Ilardi [Fri, 3 Jun 2011 10:58:26 +0000 (10:58 +0000)]
- Fix boot.
svn path=/trunk/; revision=52074
Pierre Schweitzer [Fri, 3 Jun 2011 08:43:05 +0000 (08:43 +0000)]
[NTOSKRNL]
Fixes to r52065:
- Acquire resources within a critical region
- Simplified IoEnumerateRegisteredFiltersList and made its behaviour match the one described in MSDN: http://msdn.microsoft.com/en-us/library/
ff548348%28v=vs.85%29.aspx
This was brought to you by Alex Ionescu.
svn path=/trunk/; revision=52073
Cameron Gutman [Fri, 3 Jun 2011 00:31:14 +0000 (00:31 +0000)]
- Fix build
svn path=/trunk/; revision=52070
Jérôme Gardou [Fri, 3 Jun 2011 00:29:36 +0000 (00:29 +0000)]
[WSOCK32]
remove useless def file
rbuild : use spec file
cmake : do not use two def files, it's... pointless.
svn path=/trunk/; revision=52069
Cameron Gutman [Fri, 3 Jun 2011 00:20:01 +0000 (00:20 +0000)]
[FDC]
- Remove old fdc code
svn path=/trunk/; revision=52068
Cameron Gutman [Thu, 2 Jun 2011 18:23:30 +0000 (18:23 +0000)]
[NTOSKRNL]
- Fix a bug in device removal which resulted in an IRP_MN_CANCEL_REMOVE_DEVICE request not being sent if the initial IRP_MN_QUERY_REMOVE_DEVICE failed
svn path=/trunk/; revision=52066
Pierre Schweitzer [Thu, 2 Jun 2011 17:43:44 +0000 (17:43 +0000)]
[NTOSKRNL]
- renamed Io volumes global to match Windows names (in case of debug)
- renamed IopDereferenceVpb() to IopDereferenceVpbAndFree(), IopReferenceVpbForVerify() to IopReferenceVerifyVpb(), IopInitializeVpbForMount() to IopMountInitializeVpb(), IopLoadFileSystem() to IopLoadFileSystemDriver()
- implemented IopDecrementDeviceObjectHandleCount(), IopInterlockedIncrementUlong(), IopInterlockedDecrementUlong(), IopNotifyAlreadyRegisteredFileSystems() and IoEnumerateRegisteredFiltersList()
- halfplemented IopDecrementDeviceObjectRef()
- implemented check for already registrered notification in IoRegisterFsRegistrationChange()
- implemented sending notifications for already registered drivers to registrant in IoRegisterFsRegistrationChange()
- implemented VPB freeing in IopDereferenceVpbAndFree()
- acquire Io volumes lists once and forever for system shutdown, instead of keeping acquiring and releasing
- reference device object in IopShutdownBaseFileSystems() before sending it the shutdown IRP. To ensure to keep it valid till the end
- added a FS driver registration operations counter
- use this counter to handle failed mounts
- fixed: release locks before calling driver for mounting and reacquire them after
- fixed check for boot partition failure (and associated bugcheck): check we are in boot phase 0 or 1
- simplified lock process by using only one lock (ie removed mutex). Also use only critical region where needed
- fixed: ensure that locks are properly released when quitting a function
- fixed wrong return in IopCreateVpb()
- minor fixes around
svn path=/trunk/; revision=52065
Rafal Harabien [Thu, 2 Jun 2011 15:59:57 +0000 (15:59 +0000)]
[NTOSKRNL]
- Reset KdbNumberOfRowsPrinted and KdbNumberOfColsPrinted before reading new command in kernel debugger so if previous command printed nearly full page, new command won't show "Press q to abort" message before processing
svn path=/trunk/; revision=52064
Eric Kohl [Thu, 2 Jun 2011 14:42:15 +0000 (14:42 +0000)]
[SETUPAPI]
Add missing properties for SetupDiGetDeviceRegistryProperty and SetupDiSetDeviceRegistryProperty.
svn path=/trunk/; revision=52062
Jérôme Gardou [Thu, 2 Jun 2011 12:55:09 +0000 (12:55 +0000)]
[CMAKE]
"According to gcc doc, if header.h is precompiled, the output should be named "header.h.gch" and not anything else."
Knowing it was the first step before actually doing it :-/
svn path=/trunk/; revision=52061
Jérôme Gardou [Thu, 2 Jun 2011 12:29:11 +0000 (12:29 +0000)]
revert unwanted change
svn path=/trunk/; revision=52060
Jérôme Gardou [Thu, 2 Jun 2011 12:20:30 +0000 (12:20 +0000)]
[CMAKE]
no need to call target_link_libraries if there is nothing to link
svn path=/trunk/; revision=52059
Jérôme Gardou [Thu, 2 Jun 2011 12:18:22 +0000 (12:18 +0000)]
[CMAKE]
fix pch support, with proper dependancies.
Use cmake built-in functions instead of doing weird "magic" with tabs and spaces.
According to gcc doc, if header.h is precompiled, the output should be named "header.h.gch" and not anything else.
svn path=/trunk/; revision=52058
Amine Khaldi [Thu, 2 Jun 2011 10:54:56 +0000 (10:54 +0000)]
[CMAKE]
* I left setting CMAKE_AR out of the condition. Fix this.
svn path=/trunk/; revision=52056
Cameron Gutman [Thu, 2 Jun 2011 06:24:25 +0000 (06:24 +0000)]
[FDC]
- Implement fdc.sys (still needs work but fairly complete)
[TXTSETUP.SIF]
- Load fdc.sys for floppy controllers
[FDC.INF]
- Install fdc.sys for floppy controllers
svn path=/trunk/; revision=52055
Cameron Gutman [Thu, 2 Jun 2011 06:07:08 +0000 (06:07 +0000)]
[NTOSKRNL]
- Comment out sending remove to devices before driver installation because there are still some bugs causing crashes
svn path=/trunk/; revision=52054
Amine Khaldi [Wed, 1 Jun 2011 22:18:48 +0000 (22:18 +0000)]
[CMAKE]
Merge r52051 and r52052 from cmake branch:
* Improve static libs creation in *nix. Dedicated to arty.
* Add a missing dependency.
svn path=/trunk/; revision=52053
Timo Kreuzer [Wed, 1 Jun 2011 20:36:40 +0000 (20:36 +0000)]
[NTOSKRNL]
Merge r52027 from cmake branch:
* Several improvements to debug symbols handling.
* A new (killer/awesome/...etc) feature has been introduced to kdbg: argument values support. Now backtraces contain not only usermode and kernelmode addresses translated, but also the argument values passed to the functions along the trace.
* Brought to you by the Arty.
* works only with cmake builds
svn path=/trunk/; revision=52050
Jérôme Gardou [Wed, 1 Jun 2011 19:45:03 +0000 (19:45 +0000)]
[CMAKE]
- clean up wine directx build file.
Wine removed COM from wind3d
svn path=/trunk/; revision=52049
Cameron Gutman [Wed, 1 Jun 2011 19:44:03 +0000 (19:44 +0000)]
[UMPNPMGR]
- Handle more GUIDs
svn path=/trunk/; revision=52048
Timo Kreuzer [Wed, 1 Jun 2011 19:33:20 +0000 (19:33 +0000)]
[CMD]
replace FILE IO with Memory IO functions for batch files
Patch by HansH (hans at atbas dot org)
See issue #5807 for more details.
svn path=/trunk/; revision=52047
Cameron Gutman [Wed, 1 Jun 2011 19:32:12 +0000 (19:32 +0000)]
[NTOSKRNL]
- Massive rework of device removal
- IRP_MN_QUERY_REMOVE_DEVICE is sent to all devices that will be removed in response to a removal/ejection
- If any of the IRP_MN_QUERY_REMOVE_DEVICE requests fail, all devices which received a IRP_MN_QUERY_REMOVE_DEVICE will receive IRP_MN_CANCEL_REMOVE_DEVICE
- If everything approves the remove request, IRP_MN_REMOVE_DEVICE will be sent to children, ejection and/or removal relations, and finally the device itself
- Handle removal relations for all devices not just 1st level devices
- Remove child devices before removing the parent
- Move GUID_DEVICE_REMOVE_PENDING and GUID_DEVICE_REMOVAL_VETOED notifications to IopQueryRemoveDevice
- Implement IopCancelRemoveDevice which sends IRP_MN_CANCEL_REMOVE_DEVICE to the driver stack and sends GUID_TARGET_DEVICE_REMOVE_CANCELLED to any drivers waiting on target device change
- Use the IopRemoveDevice function to remove devices instead of calling IopQueryRemoveDevice and IopSendRemoveDevice manually so removal and/or ejection relations and children are processed
- IRPs and PnP notifications sent upon device removal (surprise and safe) should now be compatible with XP/Vista/7
svn path=/trunk/; revision=52046
Rafal Harabien [Wed, 1 Jun 2011 18:20:51 +0000 (18:20 +0000)]
[APITESTS]
- Add more Rectangle function tests
- Improve ScrollDC tests
svn path=/trunk/; revision=52045
Rafal Harabien [Wed, 1 Jun 2011 18:16:52 +0000 (18:16 +0000)]
[NTOSKRNL]
- Bugcheck if ExFreePoolWithTag is called with wrong tag
svn path=/trunk/; revision=52044
Rafal Harabien [Wed, 1 Jun 2011 13:39:36 +0000 (13:39 +0000)]
[NTOSKRNL]
- Use tags when allocation and freeing memory and define them in tag.h
- Fix some wrongly used tags when freeing
- Our new memory manager doesn't check tags when ExFreePoolWithTag is used. It will be fixed after testing
svn path=/trunk/; revision=52043
Rafal Harabien [Wed, 1 Jun 2011 13:16:49 +0000 (13:16 +0000)]
[NTOSKRNL]
- Acquire spinlock when accessing SymbolFileListHead
svn path=/trunk/; revision=52041
Timo Kreuzer [Wed, 1 Jun 2011 12:08:02 +0000 (12:08 +0000)]
[CRT]
in _flsbuf, always reset _cnt to 0 and don't allocate/use a buffer when _IONBUF is set. Fixes a regression in msvcrt_winetest file.
See issue #5829 for more details.
svn path=/trunk/; revision=52040
Johannes Anderwald [Wed, 1 Jun 2011 09:59:54 +0000 (09:59 +0000)]
[NTOS]
- Fix bug in PnpRegSzToString. The caller expects the result length to be the length of the string in bytes, not the string length
- Introduced in rev 46690
svn path=/trunk/; revision=52037
Cameron Gutman [Wed, 1 Jun 2011 06:22:54 +0000 (06:22 +0000)]
[NTOSKRNL]
- Remove the device node when the device object is destroyed to prevent PnP manager from crashing when manipulating device nodes with device objects that no longer exist
- Move removal notifications into IopRemoveDevice and call it from IopPrepareDeviceForRemoval and IoRequestDeviceEject to manage all of the removal relations for each device removed
svn path=/trunk/; revision=52034
Cameron Gutman [Wed, 1 Jun 2011 01:06:35 +0000 (01:06 +0000)]
[NTOSKRNL]
- Fix a bug in device removal and ejection which caused the request to fail when EjectionRelations or RemovalRelations was not handled by a driver in the stack
svn path=/trunk/; revision=52033
Rafal Harabien [Tue, 31 May 2011 23:19:07 +0000 (23:19 +0000)]
[INF]
- Really add disk.inf. Forgotten in r51978
svn path=/trunk/; revision=52032
Cameron Gutman [Tue, 31 May 2011 23:04:59 +0000 (23:04 +0000)]
[NTOSKRNL]
- Remove an extra semicolon
- Dedicated to encoded
svn path=/trunk/; revision=52031
Rafal Harabien [Tue, 31 May 2011 21:05:03 +0000 (21:05 +0000)]
[CMAKE]
- sys-stubs.S depends now on w32ksvc.h. Unfortunately CMake isn't smart enough to find it automatically
svn path=/trunk/; revision=52030
Cameron Gutman [Tue, 31 May 2011 19:34:08 +0000 (19:34 +0000)]
[NTOSKRNL]
- Implement IopRemoveDevice and IopStopDevice
- Do a graceful remove before installing new drivers (like Windows does)
- Debug log warnings abound (don't be alarmed ;)) because drivers aren't used to receiving IRP_MN_QUERY_REMOVE_DEVICE, IRP_MN_REMOVE_DEVICE and IRP_MN_QUERY_PNP_DEVICE_STATE from our (formly) crippled PnP manager
svn path=/trunk/; revision=52029
Cameron Gutman [Tue, 31 May 2011 19:29:22 +0000 (19:29 +0000)]
[PCIIDEX]
- Handle IRP_MN_QUERY_REMOVE_DEVICE
- Handle IRP_MN_QUERY_PNP_DEVICE_STATE to report that we are not disableable to the PnP manager so we don't get removed during driver installation
svn path=/trunk/; revision=52028
Cameron Gutman [Tue, 31 May 2011 18:11:40 +0000 (18:11 +0000)]
[NTOSKRNL]
- Set the DNF_DISABLED flag if a driver returns with the HardwareDisabled flag set to true (but only BEFORE starting the device)
- Don't try to start a device with the DNF_DISABLED flag set
- Send IRP_MN_QUERY_CAPABILITIES (again) and IRP_MN_QUERY_PNP_DEVICE_STATE after the device has started
- Write the UINumber and Capabilities registry entries in IopQueryDeviceCapabilities so they will be updated after every IRP_MN_QUERY_CAPABILITIES is sent
- Set the DNUF_DONT_SHOW_IN_UI flag in response to the NoDisplayInUI flag set in DEVICE_CAPABILITIES or PNP_DEVICE_DONT_DISPLAY_IN_UI set after sending IRP_MN_QUERY_PNP_DEVICE_STATE
- Set DNUF_NBOT_DISABLEABLE if PNP_DEVICE_NOT_DISABLEABLE is set after sending IRP_MN_QUERY_PNP_DEVICE_STATE
- Remove duplicate code
- Fix sending GUID_DEVICE_ARRIVAL (patch by Eric Kohl)
- IRPs sent to PnP devices on enumeration and start are now completely compatible with Windows XP/2003/Vista
svn path=/trunk/; revision=52026
Cameron Gutman [Tue, 31 May 2011 18:02:49 +0000 (18:02 +0000)]
[I8042PRT]
- Don't ASSERT(FALSE) when receiving an unknown PNP IRP
svn path=/trunk/; revision=52025
Timo Kreuzer [Tue, 31 May 2011 17:50:55 +0000 (17:50 +0000)]
fix build
svn path=/trunk/; revision=52024
Timo Kreuzer [Tue, 31 May 2011 17:29:49 +0000 (17:29 +0000)]
[CRT]
Rewrite _splitpath.
See issue #6244 for more details.
svn path=/trunk/; revision=52023
Timo Kreuzer [Tue, 31 May 2011 17:26:30 +0000 (17:26 +0000)]
[MSVCRT_APITEST]
Add tests for splitpath
svn path=/trunk/; revision=52022
Cameron Gutman [Mon, 30 May 2011 22:27:28 +0000 (22:27 +0000)]
[NTOSKRNL]
- Implement IoTranslateBusAddress
svn path=/trunk/; revision=52019
Rafal Harabien [Mon, 30 May 2011 21:34:10 +0000 (21:34 +0000)]
[USER32]
- Use DISPLAY_DEVICEW instead of assuming DISPLAY_DEVICE is in unicode
svn path=/trunk/; revision=52016
Rafal Harabien [Mon, 30 May 2011 21:26:33 +0000 (21:26 +0000)]
[NTOSKRNL]
- Declare function without arguments with VOID keyword
- Improve rbuild file
svn path=/trunk/; revision=52015
Cameron Gutman [Mon, 30 May 2011 17:27:53 +0000 (17:27 +0000)]
[AFD]
- Launch a new listen IRP right after the current one completes instead of waiting until the current pending connection is accepted
- Reduces the chance of AFD missing two connection requests that are issued very close together and increases network performance by allowing our connection queue to do its job
svn path=/trunk/; revision=52013
Kamil Hornicek [Mon, 30 May 2011 15:27:19 +0000 (15:27 +0000)]
[WINED3D|DDRAW|D3D8|D3D9]
Sync to Wine 1.3.21
svn path=/trunk/; revision=52009
Rafal Harabien [Mon, 30 May 2011 11:40:58 +0000 (11:40 +0000)]
[ROSTESTS]
- Declare functions with 0 arguments using VOID keyword. In C it matters
- Add imagehlp winetest to CMake build
svn path=/trunk/; revision=52006
Cameron Gutman [Mon, 30 May 2011 04:15:27 +0000 (04:15 +0000)]
[NTOSKRNL]
- Implement sending GUID_TARGET_DEVICE_QUERY_REMOVE and GUID_TARGET_DEVICE_REMOVE_COMPLETE notifications
- Fix sending EventCategoryTargetDeviceChange notifications
- Remove some incorrect checks (IRP_MN_START_DEVICE CAN be called for a device that is already "started")
- Check the final status of the IRP_MN_START_DEVICE request sent after resource rebalancing and send IRP_MN_REMOVE_DEVICE if it fails
svn path=/trunk/; revision=52003
Roel Messiant [Sun, 29 May 2011 22:29:10 +0000 (22:29 +0000)]
[NTOSKRNL]
- Simplify remove lock tracking block list handling.
- Correct check for unlimited locking time being allowed.
- Eliminate use-after-free after removing a tracking block.
svn path=/trunk/; revision=52002
Olaf Siejka [Sun, 29 May 2011 21:43:37 +0000 (21:43 +0000)]
Converting POLISH localisation strings to UTF-8. Part 3/4:
- dll/win32 and dll/shellext converted
- currently, only shell32 is left, due to incoming change to new version, and kernel32 - need to research how it should be done.
Tested on rbuild/cmake
svn path=/trunk/; revision=52000
Cameron Gutman [Sun, 29 May 2011 16:44:34 +0000 (16:44 +0000)]
[NTOSKRNL]
- Fix a reference leak which prevented driver objects passed to IoRegisterPlugPlayNotification from being able to unload after the notification was unregistered
- Fix a non-paged pool leak
svn path=/trunk/; revision=51997
Eric Kohl [Sun, 29 May 2011 16:18:22 +0000 (16:18 +0000)]
[SETUPAPI]
- Add stubs for CM_Set_Class_Registry_PropertyA/W.
- Add support for missing properties to CM_Set_DevNode_Registry_Property_ExA/W.
svn path=/trunk/; revision=51996
Eric Kohl [Sun, 29 May 2011 15:58:49 +0000 (15:58 +0000)]
[UMPNPMGR]
Implement PNP_GetClassRegProp and fix a little bug in PNP_GetDeviceRegProp.
svn path=/trunk/; revision=51995
Matthias Kupfer [Sun, 29 May 2011 12:55:07 +0000 (12:55 +0000)]
Edijs Kolesnikovics
<
terminedijs AT yahoo DOT com>
- Show GPL licence from beginning
- See issue #6278 for details.
svn path=/trunk/; revision=51993
Amine Khaldi [Sun, 29 May 2011 09:55:23 +0000 (09:55 +0000)]
[CMAKE]
* Add missing dependency.
svn path=/trunk/; revision=51990
Eric Kohl [Sat, 28 May 2011 22:15:38 +0000 (22:15 +0000)]
[UMPNPMGR]
- Implement PNP_SetClassRegProp.
- Fix a typo in the PNP_SetClassRegProp declaration in pnp.idl.
svn path=/trunk/; revision=51988
Amine Khaldi [Sat, 28 May 2011 22:03:07 +0000 (22:03 +0000)]
[CMAKE]
* Improve reactos.cab creation a bit: create it using a custom command instead of a custom target.. marking it as output this way ensures a proper cleanup with make clean and co.
svn path=/trunk/; revision=51987
Eric Kohl [Sat, 28 May 2011 19:08:20 +0000 (19:08 +0000)]
[UMPNPMGR]
Add support for missing properties to PNP_SetDeviceRegProp and fix a property issue in PNP_GetDeviceRegProp.
svn path=/trunk/; revision=51982
Roel Messiant [Sat, 28 May 2011 17:56:07 +0000 (17:56 +0000)]
[NTOSKRNL]
- Don't treat the head of the tracking block list as a list entry.
svn path=/trunk/; revision=51981
Eric Kohl [Sat, 28 May 2011 17:35:51 +0000 (17:35 +0000)]
[UMPNPMGR]
Add support for missing properties to PNP_GetDeviceRegProp and improve error handling.
svn path=/trunk/; revision=51980
Eric Kohl [Sat, 28 May 2011 16:19:14 +0000 (16:19 +0000)]
Add disk.inf to source file list.
svn path=/trunk/; revision=51978
Eric Kohl [Sat, 28 May 2011 16:12:28 +0000 (16:12 +0000)]
Add an .inf file for disk drives.
See issue #5111 for more details.
svn path=/trunk/; revision=51976
Cameron Gutman [Sat, 28 May 2011 13:42:06 +0000 (13:42 +0000)]
[UNPNPMGR]
- Simplify and fix a few bugs in the ClassGUID reading code
svn path=/trunk/; revision=51974
James Tabor [Sat, 28 May 2011 11:39:36 +0000 (11:39 +0000)]
[ScreenSaver]
- Fixed screen saver load and save plus the registry problems.
svn path=/trunk/; revision=51973
James Tabor [Sat, 28 May 2011 00:32:15 +0000 (00:32 +0000)]
- No need to do extra work when the process starts.
svn path=/trunk/; revision=51972
James Tabor [Fri, 27 May 2011 23:18:57 +0000 (23:18 +0000)]
[Win32k]
- Get screen saver running. Need more work on WinLogon register issues and problems.
- Miscellaneous changes and cleanups.
svn path=/trunk/; revision=51971
Cameron Gutman [Fri, 27 May 2011 22:53:39 +0000 (22:53 +0000)]
[PCIIDE/PCIIDEX]
- Also update cmake files
svn path=/trunk/; revision=51970
Cameron Gutman [Fri, 27 May 2011 22:35:05 +0000 (22:35 +0000)]
[USETUP]
- Load other driver sections from txtsetup.sif
- Enable a debug print
[TXTSETUP]
- Add PnP entries for storage devices
[PCIIDE/PCIIDEX]
- Add to bootcd
- Both usetup's PnP manager and the user-mode PnP manager now recognize PCI IDE channels
svn path=/trunk/; revision=51969
Cameron Gutman [Fri, 27 May 2011 22:27:37 +0000 (22:27 +0000)]
[HDC]
- PCIIDE should be installed for each PCI IDE controller and UNIATA should be installed for each IDE channel
- Remove an extra comma in the compatible adapters entries
svn path=/trunk/; revision=51968
Cameron Gutman [Fri, 27 May 2011 22:06:43 +0000 (22:06 +0000)]
[PCIIDEX]
- Don't report raw device support to allow the IDE channel driver (uniata) to take over control of the enumerated devices
- Ideally the PnP manager should deal with a driver collision like this but it doesn't currently
svn path=/trunk/; revision=51967
Cameron Gutman [Fri, 27 May 2011 21:56:55 +0000 (21:56 +0000)]
[NTOSKRNL]
- Add a special case in IopLoadServiceModule for 1st stage setup when we have no service entries so we can still load drivers
- Fixes an old regression with 1st stage PnP which now can load drivers again
svn path=/trunk/; revision=51966
Pierre Schweitzer [Fri, 27 May 2011 21:21:36 +0000 (21:21 +0000)]
[NTOSKRNL]
Fix struct size checking for debug remove locks.
Spotted by Roel
svn path=/trunk/; revision=51965
Cameron Gutman [Fri, 27 May 2011 20:50:17 +0000 (20:50 +0000)]
[UMPNPMGR]
- Determine whether the device is really installed by reading the ClassGUID key instead of looking at the device flags
- Add a debug print for device installation (shouldn't be too spammy except and will be helpful for hotplugging)
[USETUP]
- Reenable the 1st stage PnP manager
svn path=/trunk/; revision=51963
Eric Kohl [Fri, 27 May 2011 15:33:12 +0000 (15:33 +0000)]
[MSPORTS]
- Implement a simple property sheet provider for serial ports. The property sheet does not show yet because the dialog resource is not found because a call to FindResourceW fails.
svn path=/trunk/; revision=51960
Eric Kohl [Fri, 27 May 2011 15:07:43 +0000 (15:07 +0000)]
[SETUPAPI]
- SetupDiGetClassDevPropertySheetsW: Improve the way property sheet pages are added to a property sheet. This change enables us to retrieve the number of property sheet pages provided by a property sheet provider without leaking property sheets.
svn path=/trunk/; revision=51959
Matthias Kupfer [Fri, 27 May 2011 08:18:33 +0000 (08:18 +0000)]
patch by Igor Paliychuk <mansonigor at gmail dot com>:
- [TRANSLATIONS] update ukrainian locale
svn path=/trunk/; revision=51948
Cameron Gutman [Fri, 27 May 2011 03:40:22 +0000 (03:40 +0000)]
[USETUP]
- Disable the 1st stage user-mode PnP manager because it is creating incomplete registry keys which is confusing the real user-mode PnP manager and preventing devices installed in 1st stage from appearing in device manager
- Fixes displaying PCI bus controllers in device manager
- I need to discuss with Herve what should be done with this code
svn path=/trunk/; revision=51947
Cameron Gutman [Fri, 27 May 2011 02:11:05 +0000 (02:11 +0000)]
[NTOSKRNL]
- Quick fix for the crash loading boot-time legacy drivers
- More device node flag state fixes coming soon
svn path=/trunk/; revision=51946
James Tabor [Fri, 27 May 2011 01:36:41 +0000 (01:36 +0000)]
[Win32k|User32]
- Remove NtUserGetLastInputInfo.
svn path=/trunk/; revision=51945
Cameron Gutman [Thu, 26 May 2011 22:49:27 +0000 (22:49 +0000)]
[NTOSKRNL]
- Implement IoInvalidateDeviceState
svn path=/trunk/; revision=51944
Rafal Harabien [Thu, 26 May 2011 22:22:37 +0000 (22:22 +0000)]
[HAL]
- Use ExFreePoolWithTag instead of ExFreePool
- Add definitions of used tags
svn path=/trunk/; revision=51943
Cameron Gutman [Thu, 26 May 2011 22:09:02 +0000 (22:09 +0000)]
[NTOSKRNL]
- Implement the kernel backend of graceful device removal/ejection
svn path=/trunk/; revision=51942
Rafal Harabien [Thu, 26 May 2011 21:25:57 +0000 (21:25 +0000)]
[WIN32K]
- Remove unused ROS specific NtGdiSetDIBits syscall
svn path=/trunk/; revision=51936
Eric Kohl [Thu, 26 May 2011 21:20:06 +0000 (21:20 +0000)]
[MSPORTS]
- Try to read the PortName registry value and get the port number from the name.
- Determine the port number for parallel ports the same way we determine the port number for serial ports, except for the use of the com port database.
svn path=/trunk/; revision=51935
Rafal Harabien [Thu, 26 May 2011 20:59:48 +0000 (20:59 +0000)]
[FASTFAT]
- Use constant instead of magic number
svn path=/trunk/; revision=51933
Rafal Harabien [Thu, 26 May 2011 20:52:59 +0000 (20:52 +0000)]
[VERSION]
- Remove redundant file
svn path=/trunk/; revision=51932
Rafal Harabien [Thu, 26 May 2011 20:39:52 +0000 (20:39 +0000)]
[BOOTDATA]
- Add Start Menu shell32 class to registry so LiveCD has it. It's needed for explorer-new.
[FREELDR]
- Fix rbuild file
svn path=/trunk/; revision=51931
Cameron Gutman [Thu, 26 May 2011 20:39:15 +0000 (20:39 +0000)]
[NTOSKRNL]
- Implement the kernel side of surprise device removal including sending the appropriate IRPs and notifying the user-mode PnP manager
- Fix the completely broken GUID_DEVICE_ARRIVAL notification (we were sending it for the parent not the children and we were sending regardless of whether any device had actually arrived)
svn path=/trunk/; revision=51930
Rafal Harabien [Thu, 26 May 2011 20:33:58 +0000 (20:33 +0000)]
[USETUP]
- Fix polish translation
svn path=/trunk/; revision=51929
Cameron Gutman [Thu, 26 May 2011 19:51:12 +0000 (19:51 +0000)]
[PCI]
- Inform the PnP manager that we don't support stopping devices by failing the IRP_MN_QUERY_STOP_DEVICE IRP instead of the IRP_MN_STOP_DEVICE IRP (which is not allowed)
svn path=/trunk/; revision=51928