- Move EFLOAT handling in seperate file, its x86 specific
- Implement CombineTransform fully in usermode instead of forwarding to NtGdiCombineTransform
- Implement MatrixToXForm
- Implement GdiTransformPoints
svn path=/trunk/; revision=50330
- Use if, instead of switch to handle flags in XFORMOBJ_bXformFixPoints
- Define XFORMOBJ to EXFORMOBJ, a stack object that links to the matrix
- There is no spoon.
svn path=/trunk/; revision=50307
- EhciDefferedRoutine: Only free Mdl if one was created when the request was added to the queue.
- Dont assume that three transfer descriptors need to be freed, use a while moving to each linked and free instead.
- Yabba Dabba Doo added to increase size of message. :)
svn path=/trunk/; revision=50304
- Implement URB_FUNCTION_SELECT_INTERFACE.
- Add missing IoMarkIrpPending before calling SubmitControlRequest.
- Now use BuildSetupPacketFromURB for creating the CtrlSetup data structure.
- When selecting configuration, make the ConfigurationHandle from the related UsbDevice instead of always the RootHub device.
- Fix typo that caused all pipes to be marked as interrupt type.
- Change CompletePendingURBRequest to only complete one SCE request Irp.
svn path=/trunk/; revision=50303
- Fix bug in InitializeUsbDevice that caused endpoints to be duplicated in internal config structure.
- Fix implementation of UsbRemoveDevice.
- Implement SetDeviceHandleData and RestoreUsbDevice.
- SubmitControlTransfer: Not all control request need data, in which case dont create a MDL and a PID_CODE_IN_TOKEN TD Descriptor.
- Fix bug in ReleaseMemory that caused memory not to be marked as free.
- Fix incorrect memory header size that resulted in memory corruption.
svn path=/trunk/; revision=50302
- Simplify error checks, by reordering code in NtGdiScaleViewportExtEx
- Simplify exception handling, use _SEH2_YIELD
- Change function order
- Minor code improvements
svn path=/trunk/; revision=50283
- Access the DC member directly instead of using IntGdiGetDCOrg
- Remove unused IntGdiGetDCOrg, GdiSetDCOrg, GdiGetDCOrgEx
svn path=/trunk/; revision=50281
Improve new printf implementation:
- remove duplicated code and implement a generic function for all (v)s(w)(n)printf
- don't call _flsbuf for string streams, while this works on windows, it doesn't work correctly on reactos (bug!)
- Fix return error codes
svn path=/trunk/; revision=50273
- Add support for FileFullDirectoryInformation and FileBothDirectoryInformation.
- Fix an off-by-one bug in the buffer size calculation.
- Zero-initialize the return buffer.
svn path=/trunk/; revision=50264
- Reduce PDE/PTE confusion a little more.
- MiQueryMemoryBasicInformation: Fall back on MEMORY_AREA data in sections until the MM rewrite also covers these. See issue #5791 for more info.
svn path=/trunk/; revision=50263
Improve LDEVOBJ_bLoadImage, use ExportSectionPointer from the GdiDriverInfo structure instead of calling RtlImageDirectoryEntryToData
svn path=/trunk/; revision=50260
- Rewrite name server enumeration routines
- Check if static dns entries are present before checking for dynamic dns entries
- Fixes static dns entries
[NETCFGX]
- GetPerAdapterInfo requires IP_PER_ADAPTER_INFO struct
- Fix reading static dns entries
- Delete static name server key, when changing dns servers to automatic (dhcp)
- Don't delete DhcpNameServer key yet, as more interaction is needed with dhcp service when changing from static dns to dynamic dhcp
- Should finally fix static dns when dhcp is active
svn path=/trunk/; revision=50257
[VIDEOPRT]: Add parameter checks to DeleteEvent and WaitForSingleObject.
[VIDEOPRT]: Fix WaitForSingleObject. It was waiting on the Object paramter itself -- which is the VideoPrt/ENG Event, not a real object, we have to wait on ->pKEvent instead.
[VIDEOPRT]: Fix WaitForSingleObject round two, it was returning the NT_STATUS, while VideoPrt should return VP_STATUS/Win32 error codes.
[WIN32K]: Allocate/free GRE events directly from pool, instead of using Eng APIs. Use documented tag for GRE Events (Dfsm), found in pooltag.txt
[WIN32K]: Implement EngMapEvent and EngUnmapEvent.
svn path=/trunk/; revision=50256