You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

47 lines
1.7 KiB

  1. From 48780b4fcc425cddc4ef8ffdf536f96a0d1b313b Mon Sep 17 00:00:00 2001
  2. From: erouault <erouault>
  3. Date: Wed, 11 Jan 2017 16:38:26 +0000
  4. Subject: [PATCH] =?UTF-8?q?*=20libtiff/tif=5Fgetimage.c:=20add=20explicit?=
  5. =?UTF-8?q?=20uint32=20cast=20in=20putagreytile=20to=20avoid=20UndefinedBe?=
  6. =?UTF-8?q?haviorSanitizer=20warning.=20Patch=20by=20Nicol=C3=A1s=20Pe?=
  7. =?UTF-8?q?=C3=B1a.=20Fixes=20http://bugzilla.maptools.org/show=5Fbug.cgi?=
  8. =?UTF-8?q?=3Fid=3D2658?=
  9. MIME-Version: 1.0
  10. Content-Type: text/plain; charset=UTF-8
  11. Content-Transfer-Encoding: 8bit
  12. ---
  13. ChangeLog | 7 +++++++
  14. libtiff/tif_getimage.c | 2 +-
  15. 2 files changed, 8 insertions(+), 1 deletion(-)
  16. diff --git a/ChangeLog b/ChangeLog
  17. index 3e31464..6a342e5 100644
  18. --- a/ChangeLog
  19. +++ b/ChangeLog
  20. @@ -1,5 +1,12 @@
  21. 2017-01-11 Even Rouault <even.rouault at spatialys.com>
  22. + * libtiff/tif_getimage.c: add explicit uint32 cast in putagreytile to
  23. + avoid UndefinedBehaviorSanitizer warning.
  24. + Patch by Nicolás Peña.
  25. + Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2658
  26. +
  27. +2017-01-11 Even Rouault <even.rouault at spatialys.com>
  28. +
  29. * libtiff/tif_read.c: avoid potential undefined behaviour on signed integer
  30. addition in TIFFReadRawStrip1() in isMapped() case.
  31. Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2650
  32. diff --git a/libtiff/tif_getimage.c b/libtiff/tif_getimage.c
  33. index fed31f1..2fa1775 100644
  34. --- a/libtiff/tif_getimage.c
  35. +++ b/libtiff/tif_getimage.c
  36. @@ -1305,7 +1305,7 @@ DECLAREContigPutFunc(putagreytile)
  37. while (h-- > 0) {
  38. for (x = w; x-- > 0;)
  39. {
  40. - *cp++ = BWmap[*pp][0] & (*(pp+1) << 24 | ~A1);
  41. + *cp++ = BWmap[*pp][0] & ((uint32)*(pp+1) << 24 | ~A1);
  42. pp += samplesperpixel;
  43. }
  44. cp += toskew;