gfx/skia/trunk/src/sfnt/SkTTCFHeader.h

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 2013 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 #ifndef SkTTCFHeader_DEFINED
     9 #define SkTTCFHeader_DEFINED
    11 #include "SkOTTableTypes.h"
    13 #pragma pack(push, 1)
    15 struct SkTTCFHeader {
    16     SK_SFNT_ULONG ttcTag;
    17     static const SK_OT_CHAR TAG0 = 't';
    18     static const SK_OT_CHAR TAG1 = 't';
    19     static const SK_OT_CHAR TAG2 = 'c';
    20     static const SK_OT_CHAR TAG3 = 'f';
    21     static const SK_OT_ULONG TAG = SkOTTableTAG<SkTTCFHeader>::value;
    23     SK_OT_Fixed version;
    24     static const SK_OT_Fixed version_1 = SkTEndian_SwapBE32(1 << 16);
    25     static const SK_OT_Fixed version_2 = SkTEndian_SwapBE32(2 << 16);
    27     SK_OT_ULONG numOffsets;
    28     //SK_OT_ULONG offset[numOffsets]
    30     struct Version2Ext {
    31         SK_OT_ULONG dsigType;
    32         struct dsigType_None {
    33             static const SK_OT_CHAR TAG0 = 0;
    34             static const SK_OT_CHAR TAG1 = 0;
    35             static const SK_OT_CHAR TAG2 = 0;
    36             static const SK_OT_CHAR TAG3 = 0;
    37             static const SK_OT_ULONG TAG = SkOTTableTAG<dsigType_None>::value;
    38         };
    39         struct dsigType_Format1 {
    40             static const SK_OT_CHAR TAG0 = 'D';
    41             static const SK_OT_CHAR TAG1 = 'S';
    42             static const SK_OT_CHAR TAG2 = 'I';
    43             static const SK_OT_CHAR TAG3 = 'G';
    44             static const SK_OT_ULONG TAG = SkOTTableTAG<dsigType_Format1>::value;
    45         };
    46         SK_OT_ULONG dsigLength; //Length of DSIG table (in bytes).
    47         SK_OT_ULONG dsigOffset; //Offset of DSIG table from the beginning of file (in bytes).
    48     };// version2ext (if version == version_2)
    49 };
    51 #pragma pack(pop)
    54 SK_COMPILE_ASSERT(sizeof(SkTTCFHeader) == 12, sizeof_SkTTCFHeader_not_12);
    56 #endif

mercurial