cairo-get_bitmap_surface-bsc1036789-CVE-2017-7475.diff 770 B

12345678910111213141516171819202122
  1. Cairo: Fix Denial-of-Service Attack due to Logical Problem in Program
  2. https://bugs.freedesktop.org/show_bug.cgi?id=100763
  3. CVE: CVE-2017-7475
  4. Upstream-Status: Submitted
  5. Signed-off-by: Fan Xin <fan.xin@jp.fujitsu.com>
  6. Index: cairo-1.15.4/src/cairo-ft-font.c
  7. ===================================================================
  8. --- cairo-1.15.4.orig/src/cairo-ft-font.c
  9. +++ cairo-1.15.4/src/cairo-ft-font.c
  10. @@ -1149,7 +1149,7 @@ _get_bitmap_surface (FT_Bitmap *bi
  11. width = bitmap->width;
  12. height = bitmap->rows;
  13. - if (width == 0 || height == 0) {
  14. + if (width == 0 || height == 0 || bitmap->buffer == NULL) {
  15. *surface = (cairo_image_surface_t *)
  16. cairo_image_surface_create_for_data (NULL, format, 0, 0, 0);
  17. return (*surface)->base.status;