Difference between revisions of "ChangeLog-0.3.11"

From ReactOS Wiki
Jump to: navigation, search
(Win32™ Libraries)
(KS)
Line 126: Line 126:
  
 
=== KS ===
 
=== KS ===
 +
* Fix a bug in KsCancelIo which accessed already freed memory [[Johannes Anderwald]]
 +
* Activate handling of requests of type KSPROPERTY_TYPE_BASICSUPPORT  [[Johannes Anderwald]]
 +
* Return correct status code in the GUID_NULL handler  [[Johannes Anderwald]]
 +
* Store KSPROPERTY_SET in Irp when using KsPropertyHandler  [[Johannes Anderwald]]
 +
* Fix a bug in KsPinDataIntersection  [[Johannes Anderwald]]
 +
* Fix a bug when canceling irps  [[Johannes Anderwald]]
 +
* Fix a critical bug in the counted worker implementation  [[Johannes Anderwald]]
 +
* Check if NodeId is out of bounds  [[Johannes Anderwald]]
 +
* Return correct status code  [[Johannes Anderwald]]
 +
* Retrieve the correct pin name  [[Johannes Anderwald]]
 +
* Implement KSPROPERTY_PIN_NAME properly  [[Johannes Anderwald]]
 +
* KsPinPropertyHandler does *NOT* set Status in the IRP  [[Johannes Anderwald]]
 +
* The Category member is LPGUID not GUID  [[Johannes Anderwald]]
 +
* Check if there is a category member  [[Johannes Anderwald]]
 +
* Fix 'Assertion 'WorkItem->List.Flink == NULL' failed at ntoskrnl\ex\work.c'  [[Johannes Anderwald]]
 +
* Fix a bug spotted by Timo  [[Johannes Anderwald]]
 +
* Store Object Header in FsContext2  [[Johannes Anderwald]]
 +
* Fix allocation of create item entry in KsAllocateObjectCreateItem  [[Johannes Anderwald]]
 +
* Fix de-referencing in Ks[De]ReferenceSoftwareBusObject & Ks[De]ReferenceBusObject  [[Johannes Anderwald]]
 +
* Fake success in KsEnableEvent  [[Johannes Anderwald]]
 +
* Check if the list empty in KspFreeEventList  [[Johannes Anderwald]]
 +
* Handle GUID_NULL in KspPropertyHandler  [[Johannes Anderwald]]
 +
* Return STATUS_MORE_ENTRIES if outputbuffer is too small  [[Johannes Anderwald]]
 +
* Zero struct in KsRegisterWorker  [[Johannes Anderwald]]
 +
* Fix calling property handler in IKsFilter_DispatchDeviceIoControl Found by [[Amine Khaldi]]
 +
* Implement handling of KSPROPERTY_TYPE_BASICSUPPORT  [[Johannes Anderwald]]
 +
* Fix a few bugs in KsPinPropertyHandler & KsTopologyPropertyHandler  [[Johannes Anderwald]]
 +
* Implement CBaseUnknown class functions in C! [[KJK::Hyperion]]
 +
* Store input buffer in Irp->AssociatedIrp.SystemBuffer  [[Johannes Anderwald]]
 +
* Implement KsCopyObjectBagItems, KsCreateBusEnumObject, KsProbeStreamIrp, KsGetFirstChild, KsGetNextSibling, IKsFilter_fnAddProcessPin, IKsFilter_fnRemoveProcessPin, KsDispatchSpecificProperty, KsPropertyHandler, KsMergeAutomationTables, KsStreamPointerDelete, KsStreamPointerScheduleTimeout, KsStreamPointerCancelTimeout, KsPinGetFirstCloneStreamPointer, KsStreamPointerGetNextCloneKsPropertyHandlerWithAllocator, KsFastPropertyHandler, KsValidateConnectRequest, IKsPin_DispatchDeviceIoControl, IKsPin_Close, KsQueryInformationFile, KsStreamIo, KsMoveIrpsOnCancelableQueue, KsRegisterFilterWithNoKSPins, _KsEdit, KsCacheMedium,  KsHandleSizedListQuery, KsAcquireResetValue, KsCompletePendingRequest, KsAllocateExtraData,  KsFreeEventList, KsDisableEvent, KsAddEvent, KsDefaultAddEventHandler, KsPinAttachAndGate, KsPinAttachOrGate, KsPinGetAndGate, KsDeviceSetBusData, KsDeviceGetBusData, KsGetPinFromIrp, KsPinAcquireProcessingMutex, KsPinGetConnectedPinDeviceObject, KsPinGetConnectedFileObject, KsPinGetConnectedPinInterface, KsPinGetNextSiblingPin, KsPinGetParentFilter, KsPinRegisterFrameReturnCallback, KsPinRegisterHandshakeCallback, KsPinRegisterIrpCompletionCallback, KsPinRegisterPowerCallbacks, KsPinReleaseProcessingMutex, KsAcquireControl, KsReleaseControl, KsFilterAddTopologyConnections, KsFilterCreatePinFactory, KsFilterAcquireProcessingMutex, KsFilterReleaseProcessingMutex, KsFilterGetChildPinCount, KsFilterRegisterPowerCallbacks, KsGetFilterFromIrp, KsGetObjectFromFileObject, KsGetObjectFromFileObject, KsGetObjectTypeFromIrp, KsGetParent, KsGetObjectFromFileObject, KsGetObjectFromFileObject, KsGetObjectTypeFromIrp, KsGetParent, KoDriverInitialize, KoDeviceInitialize, KsReferenceBusObject, KsReferenceSoftwareBusObject, KsDereferenceSoftwareBusObject, KsDereferenceBusObject, KsGetFirstChild, KsGetImageNameAndResourceId, KsMapModuleName, KsAcquireDevice, KsReleaseDevice, KsTerminateDevice, KsQueryObjectAccessMask, KsQueryObjectCreateItem, KsQueueWorkItem, KsIncrementCountedWorker, KsDecrementCountedWorker, KsRegisterCountedWorker, KsUnregisterWorker, KsRegisterWorker, KsCancelIo, KsReleaseIrpOnCancelableQueue, KsRemoveIrpFromCancelableQueue, KsRemoveSpecificIrpFromCancelableQueue, KsAddIrpToCancelableQueue, KsCancelRoutine, KsValidateAllocatorCreateRequest, KsValidateClockCreateRequest, KsValidateTopologyNodeCreateRequest, KsAddObjectCreateItemToObjectHeader, KsGetDevice, KsDefaultDispatchPnp, KsDefaultDispatchPower, KsDefaultForwardIrp, KsReadFile, KsSetInformationFile, KsQueryInformationFile, KsCreateAllocator, KsCreateDefaultAllocatorEx, KsValidateAllocatorFramingEx, KsSetDevicePnpAndBaseObject, KsQueryDevicePnpObject, KsSetTargetState, KsSetTargetDeviceObject, KsSetPowerDispatch, KsFreeDeviceHeader, KsFreeObjectHeader, KsAllocateObjectCreateItem, KsFreeObjectCreateItem, KsFreeObjectCreateItemsByContext, KsCreateDefaultSecurity, KsCreateClock, KsCreateDefaultClock,  partly implement KsAllocateDefaultClockEx, KsFreeDefaultClock, KsGetDefaultClockState, KsSetDefaultClockState, KsGetDefaultClockTime, KsSetDefaultClockTime, KsInitializeDevice, KsGetDeviceForDeviceObject, KsCreateFilterFactory, KsFilterFactorySetDeviceClassesState, KsFilterFactoryGetSymbolicLink, KsFilterFactoryAddCreateItem, KsLoadResource, KsDispatchQuerySecurity, KsDispatchSetSecurity, KsWriteFile, KsDefaultIoCompletion  [[Johannes Anderwald]]
 +
* Implement attach of filter factories to the device header  [[Johannes Anderwald]]
 +
* Filter dispatch is optional, handle it when creating new filters  [[Johannes Anderwald]]
 +
* Fix allocation check by [[Amine Khaldi]]
 +
* Fix uninitialized return value when the list is empty  [[Johannes Anderwald]]
 +
* Fix a horrible bug where the end of the list wasnt checked by the source list but the destination list  by [[Amine Khaldi]]
 +
* Acquire Spinlock at dpc level  [[Johannes Anderwald]]
 +
* Release cancel spinlock at correct level  [[Johannes Anderwald]]
 +
* Fix a desastreous bug in KsRemoveIrpFromCancelableQueue  [[Johannes Anderwald]]
 +
* Remove KsGetChildCreateParameter, it is not exported in NT 5.1 KS  [[Johannes Anderwald]]
 +
* Start Implementing IKsPin interface  [[Johannes Anderwald]]
 +
* Increment PinInstanceCount when a pin has succcessfully been created  [[Johannes Anderwald]]
 +
* Initialize pin dispatch table  [[Johannes Anderwald]]
 +
* Add create items for allocator, clock, node create requests  [[Johannes Anderwald]]
 +
* Add create item for creation of pins and topology nodes  [[Johannes Anderwald]]
 +
* Implement pin creation handler  [[Johannes Anderwald]]
 +
* Copy Filter descriptor for each instantiated filter  [[Johannes Anderwald]]
 +
* Create object bag for IKsFilter, IKsFilterFactory and IKsDevice  [[Johannes Anderwald]]
 +
- Fix storing of device descriptor in KsInitializeDriver, KsAddDevice  [[Johannes Anderwald]]
 +
- Remove DriverEntry as ks is kernel mode dll  [[Johannes Anderwald]]
 +
- Fix unimplemented tags  [[Johannes Anderwald]]
 +
- Use double in spec for functions taking longlong arguments [[Colin Finck]]
 +
- Use KSQUEUE_SPINLOCK_IRP_STORAGE macro for access the stored spin lock  [[Johannes Anderwald]]
 +
- Remove old irp queue implementation  [[Johannes Anderwald]]
 +
- Use KSSTRING instead of hardcoding object class  [[Johannes Anderwald]]
 +
- Rewrite KSCREATE_ITEM handling to support clocks, nodes, allocators.  [[Johannes Anderwald]]
 +
- Store create items in list instead of an array. Consequently, the code can be re-used for KSDEVICE_HEADER / KSOBJECT_HEADER functions.  [[Johannes Anderwald]]
 +
- Implement by using KSBASIC_HEADER struct which must be positioned before its object specific (PKSFILTER, PKSFILTERFACTOR, PKSPIN)  [[Johannes Anderwald]]
 +
- Remove a hack from KspCreateObjectType  [[Johannes Anderwald]]
 +
- Return the correct device object in KsQueryDevicePnpObject  [[Johannes Anderwald]]
 +
- Remove KspClose, KspRead, KspWrite, KspFlushBuffers, KspQuerySecurity, KspSetSecurity and all these IOCTL in KspDispatchIrp  [[Johannes Anderwald]]
 +
- Rewrite KsDispatchIrp to handle IRP_MJ_CREATE & IRP_MJ_POWER, IRP_MJ_PNP for AV Stream minidrivers and forward IRP_MJ_SYSTEM_CONTROL requests to the registered pnp base object  [[Johannes Anderwald]]
 +
- Unsupported IOCTLs are now completed with KsDispatchInvalidDeviceRequest (previously leaked)  [[Johannes Anderwald]]
 +
- Implement registering of device interface for AVStream drivers  [[Johannes Anderwald]]
 +
- Add KsFilterFactoryUpdateCacheData  [[Johannes Anderwald]]
 +
- Fix a bug which was responsible for most audio-related crashes [[Gregor Schneider]]
  
 
=== NDIS ===
 
=== NDIS ===

Revision as of 00:18, 7 November 2009

This is the changelog for ReactOS™ version 0.3.11 (released *pending*), an open-source operating system designed to be binary executable - and device driver-compatible with Microsoft™ Windows NT™ and subsequent Microsoft operating systems such as Windows 2000™ and Windows XP™. ReactOS is written by the ReactOS development team, and the last previous version of ReactOS was version 0.3.10 (released 5th July, 2009).

General

Generic 0.3.11 Changes

Translations

Brazilian

Bulgarian

  • Bulgarian translation updates (CCTAHEB, bugs #4805, #4864)

Chinese

Czech

Dutch

German

Hungarian

Italian

  • Italian translations: Spider solitaire, explorer_new, ks.inf, usetup update (Gabriel Ilardi)

Japanese

  • Japanese translation updates (pcds90net, bugs #4081, #4795)
  • Japanese translation updates (Tomoya Kitagawa, bugs #4638, #4733)

Norwegian

Polish

  • Polish translation updates (Ichoroszi, bug #4651)

Romanian

Slovak

  • Slovak translation updates (Mario Kacmar, bugs #4652, #4828, #4854, #4900)

Spanish

  • Spanish translations: Spider solitaire, explorer_new, usetup update (Gabriel Ilardi)

Generic

  • Generic: Updated resources for explorer_new, added english ks.inf (Gabriel Ilardi)

Headers

DDK

NDK

PSDK

Host Tools

BUILDNO

LOG2LINES

RBUILD

RBUILD_HELPER

Core

Bootloader (FreeLoader)

Kernel and Executive (NTOSKRNL)

FSTUB

IO

  • Calling NtLoadDriver on an already loaded driver should fail with STATUS_IMAGE_ALREADY_LOADED. Fixes one test for kmtest driver tests and a bugcheck when loading drivers a second time. (Michael Martin)
  • Don't call ExFreePool for null pointers Johannes Anderwald
  • Don't touch the freed buffer in case of an error Amine Khaldi
  • Fix IoRegisterDeviceInterface, IoSetDeviceInterfaceState to handle reference strings Johannes Anderwald

KD

KDBG

KE

MM

  • NtAllocateVirtualMemory: Add check to make sure that BaseAddress + RegionSize is inside MemoryArea. For AllocationType of MEM_RESET add FIXME's and return STATUS_SUCCESS, without modifying attributes of region. Fixes 2 kernel32 virtual tests. (Michael Martin)
  • NtMapViewOfSection: When referencing the section object by handle, don't assume access mask of SECTION_MAP_READ. Access mask must be determined from page protection attributes passed in Protect parameter. Fixes 5 winetests for kernel32 virtual. (Michael Martin)
  • MiReserveAlignedSystemPtes: Add missing lock release Johannes Anderwald

OB

PS

SMSS

NT System Library (NTDLL)

Run Time Library (RTL)

Kernel Mode Drivers

Audio Stack

BDASUP

  • Implement DllInitialize, BdaPropertyGetPinControl, BdaPropertyNodeTypes, BdaPropertyPinTypes, BdaInitFilter, BdaCreateTopology, BdaCheckChanges, BdaCommitChanges, BdaCreateFilterFactory, BdaCreateFilterFactoryEx, BdaCreatePin, BdaMethodCreatePin, BdaFilterFactoryUpdateCacheData, BdaGetChangeState, BdaMethodCreateTopology, BdaMethodDeletePin, BdaPropertyTemplateConnections, BdaStartChanges, BdaUninitFilter, BdaValidateNodeProperty Johannes Anderwald
  • Define automation tables for Filter & Pin Johannes Anderwald
  • Plug in automation tables when creating a new filter factory / pin Johannes Anderwald
  • Add BDA filter context to object bag, so that it gets freed automatically later Johannes Anderwald

FASTFAT

I8042prt

KBDCLASS

KS

  • Fix a bug in KsCancelIo which accessed already freed memory Johannes Anderwald
  • Activate handling of requests of type KSPROPERTY_TYPE_BASICSUPPORT Johannes Anderwald
  • Return correct status code in the GUID_NULL handler Johannes Anderwald
  • Store KSPROPERTY_SET in Irp when using KsPropertyHandler Johannes Anderwald
  • Fix a bug in KsPinDataIntersection Johannes Anderwald
  • Fix a bug when canceling irps Johannes Anderwald
  • Fix a critical bug in the counted worker implementation Johannes Anderwald
  • Check if NodeId is out of bounds Johannes Anderwald
  • Return correct status code Johannes Anderwald
  • Retrieve the correct pin name Johannes Anderwald
  • Implement KSPROPERTY_PIN_NAME properly Johannes Anderwald
  • KsPinPropertyHandler does *NOT* set Status in the IRP Johannes Anderwald
  • The Category member is LPGUID not GUID Johannes Anderwald
  • Check if there is a category member Johannes Anderwald
  • Fix 'Assertion 'WorkItem->List.Flink == NULL' failed at ntoskrnl\ex\work.c' Johannes Anderwald
  • Fix a bug spotted by Timo Johannes Anderwald
  • Store Object Header in FsContext2 Johannes Anderwald
  • Fix allocation of create item entry in KsAllocateObjectCreateItem Johannes Anderwald
  • Fix de-referencing in Ks[De]ReferenceSoftwareBusObject & Ks[De]ReferenceBusObject Johannes Anderwald
  • Fake success in KsEnableEvent Johannes Anderwald
  • Check if the list empty in KspFreeEventList Johannes Anderwald
  • Handle GUID_NULL in KspPropertyHandler Johannes Anderwald
  • Return STATUS_MORE_ENTRIES if outputbuffer is too small Johannes Anderwald
  • Zero struct in KsRegisterWorker Johannes Anderwald
  • Fix calling property handler in IKsFilter_DispatchDeviceIoControl Found by Amine Khaldi
  • Implement handling of KSPROPERTY_TYPE_BASICSUPPORT Johannes Anderwald
  • Fix a few bugs in KsPinPropertyHandler & KsTopologyPropertyHandler Johannes Anderwald
  • Implement CBaseUnknown class functions in C! KJK::Hyperion
  • Store input buffer in Irp->AssociatedIrp.SystemBuffer Johannes Anderwald
  • Implement KsCopyObjectBagItems, KsCreateBusEnumObject, KsProbeStreamIrp, KsGetFirstChild, KsGetNextSibling, IKsFilter_fnAddProcessPin, IKsFilter_fnRemoveProcessPin, KsDispatchSpecificProperty, KsPropertyHandler, KsMergeAutomationTables, KsStreamPointerDelete, KsStreamPointerScheduleTimeout, KsStreamPointerCancelTimeout, KsPinGetFirstCloneStreamPointer, KsStreamPointerGetNextCloneKsPropertyHandlerWithAllocator, KsFastPropertyHandler, KsValidateConnectRequest, IKsPin_DispatchDeviceIoControl, IKsPin_Close, KsQueryInformationFile, KsStreamIo, KsMoveIrpsOnCancelableQueue, KsRegisterFilterWithNoKSPins, _KsEdit, KsCacheMedium, KsHandleSizedListQuery, KsAcquireResetValue, KsCompletePendingRequest, KsAllocateExtraData, KsFreeEventList, KsDisableEvent, KsAddEvent, KsDefaultAddEventHandler, KsPinAttachAndGate, KsPinAttachOrGate, KsPinGetAndGate, KsDeviceSetBusData, KsDeviceGetBusData, KsGetPinFromIrp, KsPinAcquireProcessingMutex, KsPinGetConnectedPinDeviceObject, KsPinGetConnectedFileObject, KsPinGetConnectedPinInterface, KsPinGetNextSiblingPin, KsPinGetParentFilter, KsPinRegisterFrameReturnCallback, KsPinRegisterHandshakeCallback, KsPinRegisterIrpCompletionCallback, KsPinRegisterPowerCallbacks, KsPinReleaseProcessingMutex, KsAcquireControl, KsReleaseControl, KsFilterAddTopologyConnections, KsFilterCreatePinFactory, KsFilterAcquireProcessingMutex, KsFilterReleaseProcessingMutex, KsFilterGetChildPinCount, KsFilterRegisterPowerCallbacks, KsGetFilterFromIrp, KsGetObjectFromFileObject, KsGetObjectFromFileObject, KsGetObjectTypeFromIrp, KsGetParent, KsGetObjectFromFileObject, KsGetObjectFromFileObject, KsGetObjectTypeFromIrp, KsGetParent, KoDriverInitialize, KoDeviceInitialize, KsReferenceBusObject, KsReferenceSoftwareBusObject, KsDereferenceSoftwareBusObject, KsDereferenceBusObject, KsGetFirstChild, KsGetImageNameAndResourceId, KsMapModuleName, KsAcquireDevice, KsReleaseDevice, KsTerminateDevice, KsQueryObjectAccessMask, KsQueryObjectCreateItem, KsQueueWorkItem, KsIncrementCountedWorker, KsDecrementCountedWorker, KsRegisterCountedWorker, KsUnregisterWorker, KsRegisterWorker, KsCancelIo, KsReleaseIrpOnCancelableQueue, KsRemoveIrpFromCancelableQueue, KsRemoveSpecificIrpFromCancelableQueue, KsAddIrpToCancelableQueue, KsCancelRoutine, KsValidateAllocatorCreateRequest, KsValidateClockCreateRequest, KsValidateTopologyNodeCreateRequest, KsAddObjectCreateItemToObjectHeader, KsGetDevice, KsDefaultDispatchPnp, KsDefaultDispatchPower, KsDefaultForwardIrp, KsReadFile, KsSetInformationFile, KsQueryInformationFile, KsCreateAllocator, KsCreateDefaultAllocatorEx, KsValidateAllocatorFramingEx, KsSetDevicePnpAndBaseObject, KsQueryDevicePnpObject, KsSetTargetState, KsSetTargetDeviceObject, KsSetPowerDispatch, KsFreeDeviceHeader, KsFreeObjectHeader, KsAllocateObjectCreateItem, KsFreeObjectCreateItem, KsFreeObjectCreateItemsByContext, KsCreateDefaultSecurity, KsCreateClock, KsCreateDefaultClock, partly implement KsAllocateDefaultClockEx, KsFreeDefaultClock, KsGetDefaultClockState, KsSetDefaultClockState, KsGetDefaultClockTime, KsSetDefaultClockTime, KsInitializeDevice, KsGetDeviceForDeviceObject, KsCreateFilterFactory, KsFilterFactorySetDeviceClassesState, KsFilterFactoryGetSymbolicLink, KsFilterFactoryAddCreateItem, KsLoadResource, KsDispatchQuerySecurity, KsDispatchSetSecurity, KsWriteFile, KsDefaultIoCompletion Johannes Anderwald
  • Implement attach of filter factories to the device header Johannes Anderwald
  • Filter dispatch is optional, handle it when creating new filters Johannes Anderwald
  • Fix allocation check by Amine Khaldi
  • Fix uninitialized return value when the list is empty Johannes Anderwald
  • Fix a horrible bug where the end of the list wasnt checked by the source list but the destination list by Amine Khaldi
  • Acquire Spinlock at dpc level Johannes Anderwald
  • Release cancel spinlock at correct level Johannes Anderwald
  • Fix a desastreous bug in KsRemoveIrpFromCancelableQueue Johannes Anderwald
  • Remove KsGetChildCreateParameter, it is not exported in NT 5.1 KS Johannes Anderwald
  • Start Implementing IKsPin interface Johannes Anderwald
  • Increment PinInstanceCount when a pin has succcessfully been created Johannes Anderwald
  • Initialize pin dispatch table Johannes Anderwald
  • Add create items for allocator, clock, node create requests Johannes Anderwald
  • Add create item for creation of pins and topology nodes Johannes Anderwald
  • Implement pin creation handler Johannes Anderwald
  • Copy Filter descriptor for each instantiated filter Johannes Anderwald
  • Create object bag for IKsFilter, IKsFilterFactory and IKsDevice Johannes Anderwald

- Fix storing of device descriptor in KsInitializeDriver, KsAddDevice Johannes Anderwald - Remove DriverEntry as ks is kernel mode dll Johannes Anderwald - Fix unimplemented tags Johannes Anderwald - Use double in spec for functions taking longlong arguments Colin Finck - Use KSQUEUE_SPINLOCK_IRP_STORAGE macro for access the stored spin lock Johannes Anderwald - Remove old irp queue implementation Johannes Anderwald - Use KSSTRING instead of hardcoding object class Johannes Anderwald - Rewrite KSCREATE_ITEM handling to support clocks, nodes, allocators. Johannes Anderwald - Store create items in list instead of an array. Consequently, the code can be re-used for KSDEVICE_HEADER / KSOBJECT_HEADER functions. Johannes Anderwald - Implement by using KSBASIC_HEADER struct which must be positioned before its object specific (PKSFILTER, PKSFILTERFACTOR, PKSPIN) Johannes Anderwald - Remove a hack from KspCreateObjectType Johannes Anderwald - Return the correct device object in KsQueryDevicePnpObject Johannes Anderwald - Remove KspClose, KspRead, KspWrite, KspFlushBuffers, KspQuerySecurity, KspSetSecurity and all these IOCTL in KspDispatchIrp Johannes Anderwald - Rewrite KsDispatchIrp to handle IRP_MJ_CREATE & IRP_MJ_POWER, IRP_MJ_PNP for AV Stream minidrivers and forward IRP_MJ_SYSTEM_CONTROL requests to the registered pnp base object Johannes Anderwald - Unsupported IOCTLs are now completed with KsDispatchInvalidDeviceRequest (previously leaked) Johannes Anderwald - Implement registering of device interface for AVStream drivers Johannes Anderwald - Add KsFilterFactoryUpdateCacheData Johannes Anderwald - Fix a bug which was responsible for most audio-related crashes Gregor Schneider

NDIS

PCIIDE

PCNET

PORTCLS

SCSIPORT

SYSAUDIO

TCPIP

UNIATA

  • Synched the UniATA Inf to the internal support list. Now ROS can detect all supported SATA Controller even after 1st stage and properly shows them in the HW Wizard. (Daniel Reimer)

USB

  • Initialize DPC before connecting interrupt with IoConnectInterrupt in ehci_alloc, ohci_alloc and uhci_alloc. Probably fixes crashes on real hardware. (Michael Martin)

VIDEOPRT

Static Libraries

CMLIB

  • CmpPrepareKey: Call CmpPrepareKey vice CmpPrepareIndexOfKeys for cell signature of CM_KEY_NODE_SIGNATURE. Fixes ASSERT in cminit.c that occurs on reboot after installing some applications. (Michael Martin)

IP

USETUP

Win32™ Personality

User mode subsystem server (CSRSS)

Kernel-mode subsystem server (Win32K)

  • experimental message handling implementation for ClickLock feature (Matthias Kupfer)
  • KeyboardThreadMain: Set RepeatRate to 1 vice 0. Fixes text input in OpenOffice Writer. (Michael Martin)

Services

AUDIOSRV

RPC Server

Eventlog

DHCP

Control panel applets

APPWIZ

DESK

MAIN

MMSYS

SYSDM

Win32™ Applications

Downloader

Explorer

Notepad

Paint

RApps

Servman

Taskmgr

Win32™ Libraries

ADVAPI32

CARDS

  • Added 11 new Backs for my bavarian cards dll. Way better than using 12 times the same (Daniel Reimer)

DSOUND

[DSOUND]

  • Implement IDirectSoundCaptureBuffer8::Stop, IDirectSoundCaptureBuffer8::Lock, IDirectSoundCaptureBuffer8::Unlock, IDirectSound8::GetCaps, IDirectSound8::Compact, IDirectSoundCaptureBuffer::GetCaps, IDirectSoundCaptureBuffer::GetCurrentPosition, IDirectSoundCaptureBuffer::GetFormat, IDirectSoundCaptureBuffer::GetStatus, IDirectSoundCaptureBuffer::Start, DirectSoundEnumerateA, DirectSoundEnumerateW, DirectSoundCaptureEnumerateA, DirectSoundCaptureEnumerateW, GetDeviceID
  • Implement changing the stream format for secondary buffers
  • Fix checking of flags found Ged Murphy
  • Register IDirectSound8, IDirectSoundCapture8 with COM
  • Verify if wrong guid is passed in IDirectSound8::Initialize
  • Check for invalid guids passed to IDirectSoundCapture::Initialize
  • Close pin handle when the capture buffer is released
  • Compute a compatible pin format when the format is not supported natively by the driver
  • Fix shadowing of global variable (Usurp)
  • Verify that directsound global info has already initialized in IDirectSound8::Initialize
  • DllRegisterServer / DllUnregisterServer are taken from Wine DSound implementation (John K. Hohm)

GDI32

GDIPLUS

IPHLPAPI

KERNEL32

KSUSER

MSAFD

MSI

  • Schedule a rename operation also for ERROR_USER_MAPPED_FILE. Prevents msi from aborting an install when attempting to overwrite font files. Open Office should now install successfully. (Michael Martin)

MSVCRT

NETSHELL

OPENGL32

SECUR32

SETUPAPI

SHELL32

SHLWAPI

SYSSETUP

USER32

  • DIALOG_CreateIndirect: Save the current focused window after sending WM_INITDIALOG as the current window with focus could have been set in the dialog's procedure. Fixes setting focus on Open and Close dialogs to the FileName edit control in OpenOffice. (Michael Martin)
  • GetDlgItem: Change to WINE's implementation as ours was incorrect. Remove function GetDlgItemEnumProc and struct GETDLGITEMINFO as they are no longer needed. Fixes drawing issues in Open and Save dialogs for OpenOffice. (Michael Martin)
  • Fix 2 user32 winstation test failures Giannis Adamopoulos


USERENV

- Set ProgramFiles, CommonProgramFiles environment variable Johannes Anderwald

WS2_32_NEW

WINSPOOL

Regression tests

Versions / Official Changelogs / Community Changelogs
0.0.x Series 0.0.8 | 0.0.9 | 0.0.10 | 0.0.11 | 0.0.12 | 0.0.13 | 0.0.14 | 0.0.15 | 0.0.16 | 0.0.17 | 0.0.18 | 0.0.19 | 0.0.20 | 0.0.21
0.1.x Series 0.1.0 | 0.1.1 | 0.1.2 | 0.1.3 | 0.1.4 | 0.1.5
0.2.x Series 0.2.0 | 0.2.1 | 0.2.2 | 0.2.3 | 0.2.4 | 0.2.5 | 0.2.6 | 0.2.7 | 0.2.8 | 0.2.9
0.3.x Series 0.3.0 | 0.3.1 | 0.3.2 | 0.3.3 | 0.3.4 | 0.3.5 | 0.3.6 | 0.3.7 | 0.3.8 | 0.3.9 | 0.3.10 | 0.3.11 | 0.3.12 | 0.3.13 | 0.3.14 | 0.3.15 | 0.3.16 | 0.3.17
0.4.x Series 0.4.0 | 0.4.1 | 0.4.2 | 0.4.3 | 0.4.4 | 0.4.5 | 0.4.6 | 0.4.7 | 0.4.8 | 0.4.9 | 0.4.10 | 0.4.11 | 0.4.12 | 0.4.13 | 0.4.14