position-notify array cleanup for IDirectSoundNotify

Robert Reif reif at earthlink.net
Sun Mar 23 17:24:57 CST 2003


I am working on a patch that does the same thing.  One thing that
I was wondering about is if anything uses
IDirectSoundNotifyImpl_QueryInterface because a notify is part
of a buffer and not the other way around so this should never be
called looking for a buffer interface.  The code also doesn't check
the GUID.  If this code can be removed, then so can the buffer
pointers in the data structure.  This cleans up the code further.

I'm also working on adding an IDsDriverNotify pointer to a
hardware notify for further performance improvements.  Giving
the IDsDriver and IDsCaptureDriver access to the notifications
could allow the driver to set fragment size and number to what
the application wants and also would allow the driver to do the
notifications directly.

> IDirectSoundNotify8::Release didn't remove notify array from
> IDirectSoundBufferImpl. Suppose an application has set notification
> positions, and one of the positions is DSBPN_OFFSETSTOP, then it set
> some new positions. The new associated events will never be signaled,
> even if the application call Release and QueryInterface again before
> SetNotificationPositions.
>
> ChangeLog:
>         - Added position-notify array cleanup for IDirectSoundNotify.




More information about the wine-patches mailing list