Nicholas Nethercote 7b9969bae5 Bug 1434813 - Fix integer overflow of places.database.lastMaintenance in testing/profiles/prefs_general.js. r=glandium.
Bug 1383896 added this constant to testing/talos/talos/config.py:

> FAR_IN_FUTURE = 7258114800

which is used as the value for the "places.database.lastMaintenance" pref.
(7258114800 seconds after 1970 is the start of the year 2200.)

 libpref stores integers prefs as int32_t and the current parser doesn't detect
overflow. So this overflows to -1331819792. (I detected this with the new prefs
parser from bug 1423840, which does detect integer overflow.) As a result the
condition testing this pref in
toolkit/components/places/PlacesCategoriesStarter.js ends up always succeeding
in tests, which is the exact opposite of what was intended. This patch changes
it to 2147483647 (the year 2038), the maximum int32_t value.

(Note: this is much the same as bug 1424030, which was fixed recently.)

MozReview-Commit-ID: AQw4b8tmE9u
2018-02-01 15:40:32 +11:00
..

Talos is a python performance testing framework that is usable on Windows,
Mac and Linux. Talos is our versatile performance testing framework we
use at Mozilla. It was created to serve as a test runner for the existing
performance tests that Mozilla was running back in 2007 as well as providing
an extensible framework for new tests as they were created.

So, why Talos? Talos is the bronze automaton of Greek myth. Talos protected
the island of Crete, throwing giant boulders at unwary seamen. He's
also purported to have heated himself glowing hot and then embraced his
enemies. Basically, he was awesome.

For more information, see: https://wiki.mozilla.org/Buildbot/Talos