gfx/skia/trunk/src/core/SkImageInfo.cpp

Sat, 03 Jan 2015 20:18:00 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Sat, 03 Jan 2015 20:18:00 +0100
branch
TOR_BUG_3246
changeset 7
129ffea94266
permissions
-rw-r--r--

Conditionally enable double key logic according to:
private browsing mode or privacy.thirdparty.isolate preference and
implement in GetCookieStringCommon and FindCookie where it counts...
With some reservations of how to convince FindCookie users to test
condition and pass a nullptr when disabling double key logic.

     1 /*
     2  * Copyright 2010 Google Inc.
     3  *
     4  * Use of this source code is governed by a BSD-style license that can be
     5  * found in the LICENSE file.
     6  */
     8 #include "SkImageInfo.h"
     9 #include "SkReadBuffer.h"
    10 #include "SkWriteBuffer.h"
    12 static bool alpha_type_is_valid(SkAlphaType alphaType) {
    13     return (alphaType >= 0) && (alphaType <= kLastEnum_SkAlphaType);
    14 }
    16 static bool color_type_is_valid(SkColorType colorType) {
    17     return (colorType >= 0) && (colorType <= kLastEnum_SkColorType);
    18 }
    20 void SkImageInfo::unflatten(SkReadBuffer& buffer) {
    21     fWidth = buffer.read32();
    22     fHeight = buffer.read32();
    24     uint32_t packed = buffer.read32();
    25     SkASSERT(0 == (packed >> 16));
    26     fAlphaType = (SkAlphaType)((packed >> 8) & 0xFF);
    27     fColorType = (SkColorType)((packed >> 0) & 0xFF);
    28     buffer.validate(alpha_type_is_valid(fAlphaType) &&
    29                     color_type_is_valid(fColorType));
    30 }
    32 void SkImageInfo::flatten(SkWriteBuffer& buffer) const {
    33     buffer.write32(fWidth);
    34     buffer.write32(fHeight);
    36     SkASSERT(0 == (fAlphaType & ~0xFF));
    37     SkASSERT(0 == (fColorType & ~0xFF));
    38     uint32_t packed = (fAlphaType << 8) | fColorType;
    39     buffer.write32(packed);
    40 }

mercurial