Rémi Bernon (@rbernon) commented about dlls/dmime/audiopath.c:
- chunk.parent = &riff;
- while ((hr = stream_next_chunk(stream, &chunk)) == S_OK) {
switch (chunk.id) {case FOURCC_LIST:if (chunk.type == DMUS_FOURCC_PORTCONFIGS_LIST) {hr = parse_port_configs_list(This, stream, &chunk);if (FAILED(hr))return hr;}else if (chunk.type == DMUS_FOURCC_DSBUFFER_LIST)FIXME("buffer attributes are not supported\n");else if (chunk.type == MAKEFOURCC('p','a','p','d'))FIXME("Undocumented %s\n", debugstr_chunk(&chunk));else if (chunk.type != DMUS_FOURCC_UNFO_LIST)WARN("Unknown %s\n", debugstr_chunk(&chunk));break;
Using `switch (MAKE_IDTYPE(chunk.id, chunk.type))` like you did above, let you put every case on the same switch level and IMO makes the code nicer to read.