mfbt/double-conversion/fix-gcc-warnings.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.

michael@0 1 diff --git a/a/mfbt/double-conversion/strtod.cc b/inbound/mfbt/double-conversion/strtod.cc
michael@0 2 index 9758989..97fa4a5 100644
michael@0 3 --- a/a/mfbt/double-conversion/strtod.cc
michael@0 4 +++ b/inbound/mfbt/double-conversion/strtod.cc
michael@0 5 @@ -501,17 +501,19 @@ float Strtof(Vector<const char> buffer, int exponent) {
michael@0 6 // if they would round to the same float. If the guess is not correct we have
michael@0 7 // to look at four values (since two different doubles could be the correct
michael@0 8 // double).
michael@0 9
michael@0 10 double double_next = Double(double_guess).NextDouble();
michael@0 11 double double_previous = Double(double_guess).PreviousDouble();
michael@0 12
michael@0 13 float f1 = static_cast<float>(double_previous);
michael@0 14 +#if defined(DEBUG)
michael@0 15 float f2 = float_guess;
michael@0 16 +#endif
michael@0 17 float f3 = static_cast<float>(double_next);
michael@0 18 float f4;
michael@0 19 if (is_correct) {
michael@0 20 f4 = f3;
michael@0 21 } else {
michael@0 22 double double_next2 = Double(double_next).NextDouble();
michael@0 23 f4 = static_cast<float>(double_next2);
michael@0 24 }

mercurial