modplug-xmms-2d4c56de314ab13e4437bd8b609f0b751066eee8.patch 984 B

1234567891011121314151617181920212223242526
  1. From 2d4c56de314ab13e4437bd8b609f0b751066eee8 Mon Sep 17 00:00:00 2001
  2. From: Konstanty Bialkowski <metaplasma@users.sourceforge.net>
  3. Date: Fri, 15 Jul 2011 23:25:03 +1000
  4. Subject: [PATCH] Fix integer overflow (SA45131/A)
  5. ---
  6. libmodplug/src/load_wav.cpp | 2 +-
  7. 1 files changed, 1 insertions(+), 1 deletions(-)
  8. diff --git a/libmodplug/src/load_wav.cpp b/libmodplug/src/load_wav.cpp
  9. index 3bcd132..0399cba 100644
  10. --- a/libmodplug/src/load_wav.cpp
  11. +++ b/libmodplug/src/load_wav.cpp
  12. @@ -54,7 +54,7 @@ BOOL CSoundFile::ReadWav(const BYTE *lpStream, DWORD dwMemLength)
  13. if ((Patterns[1] = AllocatePattern(64, 4)) == NULL) return TRUE;
  14. UINT samplesize = (pfmt->channels * pfmt->bitspersample) >> 3;
  15. UINT len = pdata->length, bytelen;
  16. - if (dwMemPos + len > dwMemLength - 8) len = dwMemLength - dwMemPos - 8;
  17. + if (len > dwMemLength - 8 - dwMemPos) len = dwMemLength - dwMemPos - 8;
  18. len /= samplesize;
  19. bytelen = len;
  20. if (pfmt->bitspersample >= 16) bytelen *= 2;
  21. --
  22. 1.7.0.1