blob: b46e4d0e34205ab747a8e281542e75ddd3252b81 [file] [log] [blame]
daniel@transgaming.com91ed1492010-10-29 03:11:43 +00001//
2// Copyright (c) 2010 The ANGLE Project Authors. All rights reserved.
3// Use of this source code is governed by a BSD-style license that can be
4// found in the LICENSE file.
5//
6
7#include <math.h>
8#include <stdlib.h>
9
10#include "util.h"
11
12#ifdef _MSC_VER
13 #include <locale.h>
14#else
15 #include <sstream>
16#endif
17
18double atof_dot(const char *str)
19{
20#ifdef _MSC_VER
daniel@transgaming.com9a76b812010-12-12 08:53:34 +000021 _locale_t l = _create_locale(LC_NUMERIC, "C");
22 double result = _atof_l(str, l);
23 _free_locale(l);
24 return result;
daniel@transgaming.com91ed1492010-10-29 03:11:43 +000025#else
26 double result;
27 std::istringstream s(str);
28 std::locale l("C");
29 s.imbue(l);
30 s >> result;
31 return result;
32#endif
33}