audio: Load .WAV files with format->blockalign==0.

In theory this is illegal, but legit wavefiles in the field do it, and
it's easy to bump it to 1 for general purposes.

Formats with more specific alignment requirements already check for them
separately.

Fixes #7714.

(cherry picked from commit 2e646c7141b3009628abda2a964ba5f9d1702e1a)
This commit is contained in:
Ryan C. Gordon 2023-05-17 20:06:58 -04:00
parent 32999798e0
commit 4a0b9522b6
No known key found for this signature in database
GPG key ID: FA148B892AB48044

View file

@ -1711,7 +1711,7 @@ static int WaveCheckFormat(WaveFile *file, size_t datalength)
/* All supported formats must have a proper block size. */
if (format->blockalign == 0) {
return SDL_SetError("Invalid block alignment");
format->blockalign = 1; /* force it to 1 if it was unset. */
}
/* If the fact chunk is valid and the appropriate hint is set, the