Commit Graph

272 Commits

Author SHA1 Message Date
Sven Baars e2ac7d4d9b dmusic/tests: Fix a memory leak (Valgrind).
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-23 16:32:04 +01:00
Alex Henrie 6a6660efe2 dmusic: Make constant 'emulated' static.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-03 10:48:57 +01:00
Michael Stefaniuc 0eb58d6cfc dmusic: Use the ARRAY_SIZE() macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-23 22:26:00 +02:00
Francois Gouget 737440d24b dmusic: Make midi_port_create() static.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 10:28:28 +02:00
Michael Stefaniuc dcb438ebf8 dmusic: Fake success in two stub midi port methods.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-21 10:28:05 +02:00
Michael Stefaniuc 6ec0bfe164 dmusic: Add a stub IDirectMusicThru to the midi ports.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-20 09:09:03 +02:00
Michael Stefaniuc fcedc2b920 dmusic: Support midi in ports too.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-20 09:08:59 +02:00
Michael Stefaniuc 25dcca4b30 dmusic: Implement IDirectMusicPort_GetLatencyClock() for the midi port.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-20 09:08:55 +02:00
Michael Stefaniuc 8c48fba6a2 dmusic: Add a stub midi out port.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-20 09:08:49 +02:00
Michael Stefaniuc 8e0f94986e dmusic: Reimplement ParseDescriptor() for DirectMusicCollection.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-16 09:16:21 +02:00
Michael Stefaniuc 7028142771 dmusic: Sync up the dmobject.[ch] files.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-16 09:16:19 +02:00
Zebediah Figura 264267fc2f dmusic: Call interface methods properly.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-02 10:36:01 +02:00
Michael Stefaniuc c4e998d0e3 dmusic/tests: Add IDirectMusicObject::ParseDescriptor() tests.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-02 10:54:20 +01:00
Alistair Leslie-Hughes 24463315ba dmusic/tests: Use standard wine_dbgstr_longlong.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-03 15:57:45 +02:00
Michael Stefaniuc 40a4a5c7bf dmusic: Fail in CreatePort() if SetDirectSound() wasn't called.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-12 18:01:54 +02:00
Michael Stefaniuc 62bf20783c dmusic: Remove the port from the ports list on the port destruction.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-12 18:01:49 +02:00
Michael Stefaniuc 3b4909fd94 dmusic: Set the dsound pointer to NULL on an error path.
Spotted by Sebastian Lackner.

Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-11 10:17:50 -05:00
Józef Kucia 829ef41481 dmusic: Fix compilation on systems that don't support nameless structs or unions.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-11 09:30:22 -05:00
Michael Stefaniuc 43b3f844ba dmusic: Add dsound handling to the synth port Activate() method.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-10 09:16:13 -05:00
Michael Stefaniuc f968edb988 dmusic: Partially implement the synth IDirectMusicPort::SetDirectSound().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-10 09:16:10 -05:00
Michael Stefaniuc e8873b75af dmusic: Pass only the needed stuff to the DMPort create functions.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-10 09:16:06 -05:00
Michael Stefaniuc 36a88d2841 dmusic: Implement IDirectMusic8::SetDirectSound().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-10 09:16:00 -05:00
Michael Stefaniuc b75e8bc6bd dmusic: Use more sensible and consistent field names for IDirectMusic8Impl.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-10 09:15:50 -05:00
Michael Stefaniuc 251d1c0b86 dmusic/tests: Expand the dsound refcount testing with the port.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-10 09:15:45 -05:00
Michael Stefaniuc cf943820eb dmusic/tests: Add some IDirectMusic_SetDirectSound() tests.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-05 10:13:22 +02:00
Michael Stefaniuc 950b8a9699 dmusic: Avoid an intermediate copy in PackStructured().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-02 11:18:33 +02:00
Michael Stefaniuc 7cd7f14696 dmusic: Implement IDirectMusicBuffer::PackUnstructured().
Based on a patch by Michael Müller <michael@fds-team.de>.

Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-01 19:29:16 +02:00
Michael Stefaniuc 4fbae8eab4 dmusic: Use DMUS_EVENT_SIZE() to calculate the size of the message.
Suggested by Michael Müller.

Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-01 19:29:15 +02:00
Nikolay Sivov f0fb2f16ca dmusic/tests: Use void* instead of void** type value for outer argument.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-24 20:30:30 +02:00
Michael Stefaniuc 883fe110ea dmusic: Support the IKsControl interface for the synth port.
Based on a patch by Michael Müller.

Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-05 11:43:21 +02:00
Michael Stefaniuc 845bf2ff59 dmusic: Move the SynthPortImpl struct to where it is used.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-05 11:43:20 +02:00
Michael Stefaniuc ca87c49390 dmusic: Simplify the IDirectMusicPort_QueryInterface implementation.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-05 11:43:17 +02:00
Michael Stefaniuc 1dc5cc3470 dmusic/tests: Add basic COM tests for IDirectMusicPort.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-05 11:43:14 +02:00
Michael Stefaniuc dd8d5f3820 dmusic: Avoid using the COM method implementations directly.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-01 20:47:46 +09:00
Michael Stefaniuc 253bffafba dmusic: Use debugstr_guid to trace some GUIDs.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-26 20:33:18 +09:00
Michael Stefaniuc abb0a22d31 dmusic: Remove old and ugly COM macros. 2015-06-29 19:07:55 +09:00
Michael Stefaniuc 8c6c7f6b49 dmloader: Add and use a generic IPersistStream_GetClassID. 2015-04-28 15:35:23 +09:00
Michael Stefaniuc f897757865 dmusic/tests: Remove an unused assigment (PVS-Studio). 2015-01-15 14:06:00 +01:00
Michael Stefaniuc 3d77974f76 dmusic: Remove duplicated interface ID checks (PVS-Studio). 2014-10-29 20:31:06 +09:00
Frédéric Delanoy 2ab8729020 Assorted spelling/grammar fixes. 2014-06-20 12:19:31 +02:00
Michael Stefaniuc 5e1783b59a dmusic: Increment the refcount when a IReferenceClock pointer is returned. 2014-06-17 09:04:24 +02:00
Michael Stefaniuc d33989f675 dmusic: Remove the redundant "IDirectMusicCollection" from method names. 2014-06-13 15:59:48 +02:00
Michael Stefaniuc 147f100f3e dmusic: Get rid of the extra pointer to a DMUS_OBJECTDESC. 2014-06-13 15:59:42 +02:00
Michael Stefaniuc 4e81a977c7 dmusic: Use generic "unimplemented" methods for IPersistStream. 2014-06-13 15:59:39 +02:00
Michael Stefaniuc 02ed47fa3c dmusic: Move the common parts of DMObject to a generic implementation. 2014-06-13 15:59:36 +02:00
Michael Stefaniuc 1a7c0a6a70 dmusic: Lock/unlock the module only on creation/destruction of the object. 2014-06-11 16:13:02 +02:00
Michael Stefaniuc d67f35b9dc dmusic: Don't leak memory on DirectMusicInstrument creation failure.
Also lock/unlock the module only on creation/destruction of the object.
2014-06-11 16:12:51 +02:00
Michael Stefaniuc 096bfbd214 dmusic: Simplify the creation of a DirectMusic8 object.
Also lock/unlock the module only on creation/destruction of the object.
2014-06-11 16:12:47 +02:00
Michael Stefaniuc d82e2935e4 dmusic: Release the clock when destroying the IDirectMusic8 object. 2014-06-11 16:12:43 +02:00
Michael Stefaniuc 19eba06a26 dmusic: Don't leak memory on IReferenceClock creation failure.
Also lock/unlock the module only on creation/destruction of the object.
2014-06-11 16:12:36 +02:00