gfx/ycbcr/QuellGccWarnings.patch

Tue, 06 Jan 2015 21:39:09 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Tue, 06 Jan 2015 21:39:09 +0100
branch
TOR_BUG_9701
changeset 8
97036ab72558
permissions
-rw-r--r--

Conditionally force memory storage according to privacy.thirdparty.isolate;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.

     1 diff --git a/gfx/ycbcr/yuv_convert.cpp b/gfx/ycbcr/yuv_convert.cpp
     2 --- a/gfx/ycbcr/yuv_convert.cpp
     3 +++ b/gfx/ycbcr/yuv_convert.cpp
     4 @@ -337,16 +337,17 @@ NS_GFX_(void) ScaleYCbCrToRGB32(const ui
     5                                           source_dx_uv >> kFractionBits);
     6          }
     7        }
     8        else {
     9          ScaleYUVToRGB32Row_C(y_ptr, u_ptr, v_ptr,
    10                               dest_pixel, width, source_dx);
    11        }
    12  #else
    13 +      (void)source_dx_uv;
    14        ScaleYUVToRGB32Row(y_ptr, u_ptr, v_ptr,
    15                           dest_pixel, width, source_dx);
    16  #endif
    17      }
    18    }
    19    // MMX used for FastConvertYUVToRGB32Row and FilterRows requires emms.
    20    if (has_mmx)
    21      EMMS();
    22 diff --git a/gfx/ycbcr/yuv_row.h b/gfx/ycbcr/yuv_row.h
    23 --- a/gfx/ycbcr/yuv_row.h
    24 +++ b/gfx/ycbcr/yuv_row.h
    25 @@ -129,14 +129,14 @@ extern SIMD_ALIGNED(int16 kCoefficientsR
    26  #if defined(ARCH_CPU_X86) && !defined(ARCH_CPU_X86_64)
    27  #if defined(_MSC_VER)
    28  #define EMMS() __asm emms
    29  #pragma warning(disable: 4799)
    30  #else
    31  #define EMMS() asm("emms")
    32  #endif
    33  #else
    34 -#define EMMS()
    35 +#define EMMS() ((void)0)
    36  #endif
    38  }  // extern "C"
    40  #endif  // MEDIA_BASE_YUV_ROW_H_

mercurial