Commit ac904762 authored by André Hentschel's avatar André Hentschel Committed by Alexandre Julliard

dmsynth: Fix compilation on systems that don't support nameless structs or unions.

parent ed4ce217
...@@ -21,6 +21,8 @@ ...@@ -21,6 +21,8 @@
#define COBJMACROS #define COBJMACROS
#define NONAMELESSUNION
#define NONAMELESSSTRUCT
#include "objbase.h" #include "objbase.h"
#include "initguid.h" #include "initguid.h"
#include "dmksctrl.h" #include "dmksctrl.h"
...@@ -418,45 +420,45 @@ static HRESULT WINAPI DMSynthImpl_IKsControl_KsProperty(IKsControl* iface, PKSPR ...@@ -418,45 +420,45 @@ static HRESULT WINAPI DMSynthImpl_IKsControl_KsProperty(IKsControl* iface, PKSPR
{ {
TRACE("(%p)->(%p, %u, %p, %u, %p)\n", iface, Property, PropertyLength, PropertyData, DataLength, BytesReturned); TRACE("(%p)->(%p, %u, %p, %u, %p)\n", iface, Property, PropertyLength, PropertyData, DataLength, BytesReturned);
TRACE("Property = %s - %u - %u\n", debugstr_guid(&Property->Set), Property->Id, Property->Flags); TRACE("Property = %s - %u - %u\n", debugstr_guid(&Property->u.s.Set), Property->u.s.Id, Property->u.s.Flags);
if (Property->Flags != KSPROPERTY_TYPE_GET) if (Property->u.s.Flags != KSPROPERTY_TYPE_GET)
{ {
FIXME("Property flags %u not yet supported\n", Property->Flags); FIXME("Property flags %u not yet supported\n", Property->u.s.Flags);
return S_FALSE; return S_FALSE;
} }
if (DataLength < sizeof(DWORD)) if (DataLength < sizeof(DWORD))
return HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER); return HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER);
if (IsEqualGUID(&Property->Set, &GUID_DMUS_PROP_INSTRUMENT2)) if (IsEqualGUID(&Property->u.s.Set, &GUID_DMUS_PROP_INSTRUMENT2))
{ {
*(DWORD*)PropertyData = TRUE; *(DWORD*)PropertyData = TRUE;
*BytesReturned = sizeof(DWORD); *BytesReturned = sizeof(DWORD);
} }
else if (IsEqualGUID(&Property->Set, &GUID_DMUS_PROP_DLS2)) else if (IsEqualGUID(&Property->u.s.Set, &GUID_DMUS_PROP_DLS2))
{ {
*(DWORD*)PropertyData = TRUE; *(DWORD*)PropertyData = TRUE;
*BytesReturned = sizeof(DWORD); *BytesReturned = sizeof(DWORD);
} }
else if (IsEqualGUID(&Property->Set, &GUID_DMUS_PROP_GM_Hardware)) else if (IsEqualGUID(&Property->u.s.Set, &GUID_DMUS_PROP_GM_Hardware))
{ {
*(DWORD*)PropertyData = FALSE; *(DWORD*)PropertyData = FALSE;
*BytesReturned = sizeof(DWORD); *BytesReturned = sizeof(DWORD);
} }
else if (IsEqualGUID(&Property->Set, &GUID_DMUS_PROP_GS_Hardware)) else if (IsEqualGUID(&Property->u.s.Set, &GUID_DMUS_PROP_GS_Hardware))
{ {
*(DWORD*)PropertyData = FALSE; *(DWORD*)PropertyData = FALSE;
*BytesReturned = sizeof(DWORD); *BytesReturned = sizeof(DWORD);
} }
else if (IsEqualGUID(&Property->Set, &GUID_DMUS_PROP_XG_Hardware)) else if (IsEqualGUID(&Property->u.s.Set, &GUID_DMUS_PROP_XG_Hardware))
{ {
*(DWORD*)PropertyData = FALSE; *(DWORD*)PropertyData = FALSE;
*BytesReturned = sizeof(DWORD); *BytesReturned = sizeof(DWORD);
} }
else else
{ {
FIXME("Unknown property %s\n", debugstr_guid(&Property->Set)); FIXME("Unknown property %s\n", debugstr_guid(&Property->u.s.Set));
*(DWORD*)PropertyData = FALSE; *(DWORD*)PropertyData = FALSE;
*BytesReturned = sizeof(DWORD); *BytesReturned = sizeof(DWORD);
} }
......
...@@ -19,6 +19,8 @@ ...@@ -19,6 +19,8 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/ */
#define NONAMELESSUNION
#define NONAMELESSSTRUCT
#include "dmsynth_private.h" #include "dmsynth_private.h"
#include "initguid.h" #include "initguid.h"
#include "uuids.h" #include "uuids.h"
...@@ -212,25 +214,25 @@ static HRESULT WINAPI DMSynthSinkImpl_IKsControl_KsProperty(IKsControl* iface, P ...@@ -212,25 +214,25 @@ static HRESULT WINAPI DMSynthSinkImpl_IKsControl_KsProperty(IKsControl* iface, P
{ {
TRACE("(%p)->(%p, %u, %p, %u, %p)\n", iface, Property, PropertyLength, PropertyData, DataLength, BytesReturned); TRACE("(%p)->(%p, %u, %p, %u, %p)\n", iface, Property, PropertyLength, PropertyData, DataLength, BytesReturned);
TRACE("Property = %s - %u - %u\n", debugstr_guid(&Property->Set), Property->Id, Property->Flags); TRACE("Property = %s - %u - %u\n", debugstr_guid(&Property->u.s.Set), Property->u.s.Id, Property->u.s.Flags);
if (Property->Flags != KSPROPERTY_TYPE_GET) if (Property->u.s.Flags != KSPROPERTY_TYPE_GET)
{ {
FIXME("Property flags %u not yet supported\n", Property->Flags); FIXME("Property flags %u not yet supported\n", Property->u.s.Flags);
return S_FALSE; return S_FALSE;
} }
if (DataLength < sizeof(DWORD)) if (DataLength < sizeof(DWORD))
return HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER); return HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER);
if (IsEqualGUID(&Property->Set, &GUID_DMUS_PROP_SinkUsesDSound)) if (IsEqualGUID(&Property->u.s.Set, &GUID_DMUS_PROP_SinkUsesDSound))
{ {
*(DWORD*)PropertyData = TRUE; *(DWORD*)PropertyData = TRUE;
*BytesReturned = sizeof(DWORD); *BytesReturned = sizeof(DWORD);
} }
else else
{ {
FIXME("Unknown property %s\n", debugstr_guid(&Property->Set)); FIXME("Unknown property %s\n", debugstr_guid(&Property->u.s.Set));
*(DWORD*)PropertyData = FALSE; *(DWORD*)PropertyData = FALSE;
*BytesReturned = sizeof(DWORD); *BytesReturned = sizeof(DWORD);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment