Skip to content

Commit 43e2204

Browse files
Sackzementsezero
authored andcommitted
decoder_wav.c:AddLoopPoint(): Move start/stop check to top
1 parent f6ad6c4 commit 43e2204

File tree

1 file changed

+11
-9
lines changed

1 file changed

+11
-9
lines changed

src/decoder_wav.c

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -949,6 +949,11 @@ static bool ParseDATA(WAV_AudioData *adata, SDL_IOStream *io, Uint32 chunk_lengt
949949

950950
static bool AddLoopPoint(WAV_AudioData *adata, Uint32 play_count, Uint32 start, Uint32 stop)
951951
{
952+
// ignore the loop if it's bogus but carry on.
953+
if (start >= stop) {
954+
return true;
955+
}
956+
952957
WAVLoopPoint *loop;
953958
WAVLoopPoint *loops = SDL_realloc(adata->loops, (adata->numloops + 1) * sizeof(*adata->loops));
954959
if (!loops) {
@@ -957,16 +962,13 @@ static bool AddLoopPoint(WAV_AudioData *adata, Uint32 play_count, Uint32 start,
957962

958963
//SDL_Log("LOOP: count=%d start=%d stop=%d", (int) play_count, (int) start, (int) stop);
959964

960-
// ignore the loop if it's bogus but carry on.
961-
if (start < stop) {
962-
loop = &loops[adata->numloops];
963-
loop->start = start;
964-
loop->stop = stop;
965-
loop->iterations = play_count;
965+
loop = &loops[adata->numloops];
966+
loop->start = start;
967+
loop->stop = stop;
968+
loop->iterations = play_count;
966969

967-
adata->loops = loops;
968-
++adata->numloops;
969-
}
970+
adata->loops = loops;
971+
++adata->numloops;
970972

971973
return true;
972974
}

0 commit comments

Comments
 (0)