Bug 950986 - Use ToDouble() to convert version to a double independent of locale. r=dougt, a=lsblakk
--- a/xpcom/base/nsSystemInfo.cpp
+++ b/xpcom/base/nsSystemInfo.cpp
@@ -176,17 +176,18 @@ nsSystemInfo::Init()
}
}
#if defined(XP_WIN) && defined(MOZ_METRO)
// Create "hasWindowsTouchInterface" property.
nsAutoString version;
rv = GetPropertyAsAString(NS_LITERAL_STRING("version"), version);
NS_ENSURE_SUCCESS(rv, rv);
- double versionDouble = atof(NS_ConvertUTF16toUTF8(version).get());
+ double versionDouble = version.ToDouble(&rv);
+ NS_ENSURE_SUCCESS(rv, rv);
rv = SetPropertyAsBool(NS_ConvertASCIItoUTF16("hasWindowsTouchInterface"),
versionDouble >= 6.2);
NS_ENSURE_SUCCESS(rv, rv);
#else
rv = SetPropertyAsBool(NS_ConvertASCIItoUTF16("hasWindowsTouchInterface"), false);
NS_ENSURE_SUCCESS(rv, rv);
#endif