diff options
| author | listeria <[email protected]> | 2024-05-24 13:24:40 -0300 |
|---|---|---|
| committer | GitHub <[email protected]> | 2024-05-24 18:24:40 +0200 |
| commit | b429dbdc4b41d57ff00456c73646bb1f6f14d8b5 (patch) | |
| tree | 0c6a5a4377eb0c9d03ecf5769638e3eca828a393 | |
| parent | d9c5066382615644137b4f65479c65c44820027a (diff) | |
| download | raylib-b429dbdc4b41d57ff00456c73646bb1f6f14d8b5.tar.gz raylib-b429dbdc4b41d57ff00456c73646bb1f6f14d8b5.zip | |
fix WaveCrop(): update wave->frameCount (#4003)
also allow `finalFrame = wave->frameCount' as the range of frames does
not include it.
Co-authored-by: Listeria monocytogenes <[email protected]>
| -rw-r--r-- | src/raudio.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/raudio.c b/src/raudio.c index e74f8590..c6bd0016 100644 --- a/src/raudio.c +++ b/src/raudio.c @@ -1278,7 +1278,7 @@ Wave WaveCopy(Wave wave) // NOTE: Security check in case of out-of-range void WaveCrop(Wave *wave, int initFrame, int finalFrame) { - if ((initFrame >= 0) && (initFrame < finalFrame) && ((unsigned int)finalFrame < wave->frameCount)) + if ((initFrame >= 0) && (initFrame < finalFrame) && ((unsigned int)finalFrame <= wave->frameCount)) { int frameCount = finalFrame - initFrame; @@ -1288,6 +1288,7 @@ void WaveCrop(Wave *wave, int initFrame, int finalFrame) RL_FREE(wave->data); wave->data = data; + wave->frameCount = (unsigned int)frameCount; } else TRACELOG(LOG_WARNING, "WAVE: Crop range out of bounds"); } |
