Skip JUNK chunks in wave files
parent
35ec0075cf
commit
19d878d711
|
@ -460,7 +460,7 @@ SDL_LoadWAV_RW(SDL_RWops * src, int freesrc,
|
||||||
}
|
}
|
||||||
/* 2 Uint32's for chunk header+len, plus the lenread */
|
/* 2 Uint32's for chunk header+len, plus the lenread */
|
||||||
headerDiff += lenread + 2 * sizeof(Uint32);
|
headerDiff += lenread + 2 * sizeof(Uint32);
|
||||||
} while ((chunk.magic == FACT) || (chunk.magic == LIST) || (chunk.magic == BEXT));
|
} while ((chunk.magic == FACT) || (chunk.magic == LIST) || (chunk.magic == BEXT) || (chunk.magic == JUNK));
|
||||||
|
|
||||||
/* Decode the audio data format */
|
/* Decode the audio data format */
|
||||||
format = (WaveFMT *) chunk.data;
|
format = (WaveFMT *) chunk.data;
|
||||||
|
|
|
@ -30,6 +30,7 @@
|
||||||
#define FACT 0x74636166 /* "fact" */
|
#define FACT 0x74636166 /* "fact" */
|
||||||
#define LIST 0x5453494c /* "LIST" */
|
#define LIST 0x5453494c /* "LIST" */
|
||||||
#define BEXT 0x74786562 /* "bext" */
|
#define BEXT 0x74786562 /* "bext" */
|
||||||
|
#define JUNK 0x4B4E554A /* "JUNK" */
|
||||||
#define FMT 0x20746D66 /* "fmt " */
|
#define FMT 0x20746D66 /* "fmt " */
|
||||||
#define DATA 0x61746164 /* "data" */
|
#define DATA 0x61746164 /* "data" */
|
||||||
#define PCM_CODE 0x0001
|
#define PCM_CODE 0x0001
|
||||||
|
|
Loading…
Reference in New Issue