Module: wine Branch: master Commit: bc26431e9409356081682b0fa219f350bb503890 URL: http://source.winehq.org/git/wine.git/?a=commit;h=bc26431e9409356081682b0fa2...
Author: Nikolay Sivov nsivov@codeweavers.com Date: Mon Sep 21 21:13:24 2015 +0300
msacm32/tests: Allow alternative product id.
---
dlls/msacm32/tests/msacm.c | 18 +++++++++++++----- include/mmreg.h | 1 + 2 files changed, 14 insertions(+), 5 deletions(-)
diff --git a/dlls/msacm32/tests/msacm.c b/dlls/msacm32/tests/msacm.c index 88ad330..0defb33 100644 --- a/dlls/msacm32/tests/msacm.c +++ b/dlls/msacm32/tests/msacm.c @@ -127,15 +127,16 @@ static BOOL CALLBACK DriverEnumProc(HACMDRIVERID hadid, TODO: should it be *exactly* sizeof(dd), as tested here? */ if (rc == MMSYSERR_NOERROR) { - struct { + static const struct { const char *shortname; - const WORD mid; - const WORD pid; + WORD mid; + WORD pid; + WORD pid_alt; } *iter, expected_ids[] = { { "Microsoft IMA ADPCM", MM_MICROSOFT, MM_MSFT_ACM_IMAADPCM }, { "MS-ADPCM", MM_MICROSOFT, MM_MSFT_ACM_MSADPCM }, { "Microsoft CCITT G.711", MM_MICROSOFT, MM_MSFT_ACM_G711}, - { "MPEG Layer-3 Codec", MM_FRAUNHOFER_IIS, MM_FHGIIS_MPEGLAYER3_DECODE }, + { "MPEG Layer-3 Codec", MM_FRAUNHOFER_IIS, MM_FHGIIS_MPEGLAYER3_DECODE, MM_FHGIIS_MPEGLAYER3_PROFESSIONAL }, { "MS-PCM", MM_MICROSOFT, MM_MSFT_ACM_PCM }, { 0 } }; @@ -145,7 +146,14 @@ static BOOL CALLBACK DriverEnumProc(HACMDRIVERID hadid,
for (iter = expected_ids; iter->shortname; ++iter) { if (dd.szShortName && !strcmp(iter->shortname, dd.szShortName)) { - ok(iter->mid == dd.wMid && iter->pid == dd.wPid, + /* try alternative product id on mismatch */ + if (iter->pid_alt && iter->pid != dd.wPid) + ok(iter->mid == dd.wMid && iter->pid_alt == dd.wPid, + "Got wrong manufacturer (0x%x vs 0x%x) or product (0x%x vs 0x%x)\n", + dd.wMid, iter->mid, + dd.wPid, iter->pid_alt); + else + ok(iter->mid == dd.wMid && iter->pid == dd.wPid, "Got wrong manufacturer (0x%x vs 0x%x) or product (0x%x vs 0x%x)\n", dd.wMid, iter->mid, dd.wPid, iter->pid); diff --git a/include/mmreg.h b/include/mmreg.h index e0b1dd0..2ee2b00 100644 --- a/include/mmreg.h +++ b/include/mmreg.h @@ -129,6 +129,7 @@ typedef struct _WAVEFORMATEX {
#define MM_FRAUNHOFER_IIS 0xAC #define MM_FHGIIS_MPEGLAYER3_DECODE 0x09 +#define MM_FHGIIS_MPEGLAYER3_PROFESSIONAL 0x0d
#if !defined(WAVE_FORMAT_EXTENSIBLE) #define WAVE_FORMAT_EXTENSIBLE 0xFFFE /* Microsoft */