Always use the "C" number locale (fixing blink tests)

If you run with a non English, non "C", locale, blink tests would
fail since blink uses locale sensitive number to string conversions,
and only in C/English locales is the decimal separator ".".

For non-test code there was already code that forced the number
locale back to "C" but not so for other executables or code
path.

This sets number locale to "C" in all those places where code set it
to something else. Both for renderer processes and other
processes. This should not affect the UI since the C lib
number conversion routines are not good enough so UI code (should)
use icu number to string conversion routines instead.

This patch also adds an assert that the locale is correct to
catch other/future ways the locale end up incorrectly and
deletes some broken test expectations (that hid a symptom of the bug).

Android is partly excluded since its locale system works differently
and probing the current locale only gives strange data back.

Bug: 930701
Change-Id: I15bc0522393d668598d6609dc252aba246ada3f2
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1466443
Reviewed-by: Ken Rockot <rockot@google.com>
Reviewed-by: Peter Beverloo <peter@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Albert J. Wong <ajwong@chromium.org>
Commit-Queue: Daniel Bratell <bratell@opera.com>
Cr-Commit-Position: refs/heads/master@{#642917}
7 files changed