Sat, 03 Jan 2015 20:18:00 +0100
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 2012 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 */
7 #ifndef SkOpSpan_DEFINED
8 #define SkOpSpan_DEFINED
10 #include "SkPoint.h"
12 class SkOpSegment;
14 struct SkOpSpan {
15 SkOpSegment* fOther;
16 SkPoint fPt; // computed when the curves are intersected
17 double fT;
18 double fOtherT; // value at fOther[fOtherIndex].fT
19 int fOtherIndex; // can't be used during intersection
20 int fWindSum; // accumulated from contours surrounding this one.
21 int fOppSum; // for binary operators: the opposite winding sum
22 int fWindValue; // 0 == canceled; 1 == normal; >1 == coincident
23 int fOppValue; // normally 0 -- when binary coincident edges combine, opp value goes here
24 bool fDone; // if set, this span to next higher T has been processed
25 bool fUnsortableStart; // set when start is part of an unsortable pair
26 bool fUnsortableEnd; // set when end is part of an unsortable pair
27 bool fSmall; // if set, consecutive points are almost equal
28 bool fTiny; // if set, span may still be considered once for edge following
29 bool fLoop; // set when a cubic loops back to this point
31 #ifdef SK_DEBUG
32 void dump() const;
33 #endif
34 };
36 #endif