From ddd263875896c11b7d0875c7357a3322243290d9 Mon Sep 17 00:00:00 2001 From: Stefan Schmidt Date: Fri, 30 Nov 2018 15:30:01 +0100 Subject: [PATCH] Revert "eina: add locale-independent eina_convert_strtod_c function" This reverts commit bef1c5cc433b89add2cf0292e1098e1bd74ac640. The commit breaks the build on macos. I gave it soem time to get fixed up quickly, but its late Friday night in Korea now and this is unlikely to get fixed until Monday. Revert here until fixed. ./src/lib/eina/eina_private.h:158:1: error: unknown type name 'locale_t' https://travis-ci.org/Enlightenment/efl/jobs/461790674 --- src/lib/eina/eina_convert.c | 10 ---------- src/lib/eina/eina_convert.h | 16 ---------------- src/lib/eina/eina_main.c | 19 ------------------- src/lib/eina/eina_private.h | 6 ------ src/tests/eina/eina_test_convert.c | 21 --------------------- 5 files changed, 72 deletions(-) diff --git a/src/lib/eina/eina_convert.c b/src/lib/eina/eina_convert.c index 152ef5be4a..2943b37343 100644 --- a/src/lib/eina/eina_convert.c +++ b/src/lib/eina/eina_convert.c @@ -453,16 +453,6 @@ eina_convert_atofp(const char *src, int length, Eina_F32p32 *fp) return EINA_TRUE; } -EAPI double -eina_convert_strtod_c(const char *nptr, char **endptr) -{ -#ifdef _WIN32 - return _strtod_l(nptr, endptr, _eina_c_locale_get()); -#else - return strtod_l(nptr, endptr, _eina_c_locale_get()); -#endif -} - /** * @} */ diff --git a/src/lib/eina/eina_convert.h b/src/lib/eina/eina_convert.h index 337cd88ad8..026fc6c8f6 100644 --- a/src/lib/eina/eina_convert.h +++ b/src/lib/eina/eina_convert.h @@ -333,22 +333,6 @@ EAPI Eina_Bool eina_convert_atofp(const char *src, int length, Eina_F32p32 *fp) EINA_ARG_NONNULL(1, 3); -/** - * @brief Converts a string to a floating point number. - * - * @param[in] nptr a string to convert. It shouldn't be NULL. - * @param[out] endptr If endptr is not NULL, a pointer to the character after the last - * character used in the conversion is stored in the location referenced - * by endptr. - * @return a double type floating point number. - * - * This function returns converted floating point number with locale-independency. - * Actually, it use "C" locale for strtod_l function internally. If you need strtod - * without locale-dependency, this function can replace strtod. - * For more information, please refer documents of strtod, strtod_l. - */ -EAPI double eina_convert_strtod_c(const char *nptr, char **endptr); - /** * @} */ diff --git a/src/lib/eina/eina_main.c b/src/lib/eina/eina_main.c index 535e4e7611..024d1e3eaa 100644 --- a/src/lib/eina/eina_main.c +++ b/src/lib/eina/eina_main.c @@ -85,7 +85,6 @@ static int _eina_main_count = 0; static int _eina_main_thread_count = 0; #endif static int _eina_log_dom = -1; -static locale_t _eina_c_locale; #ifdef ERR #undef ERR @@ -286,12 +285,6 @@ eina_init(void) if (EINA_LIKELY(_eina_main_count > 0)) return ++_eina_main_count; -#ifdef _WIN32 - _eina_c_locale = _create_locale(LC_ALL, "C"); -#else - _eina_c_locale = newlocale(LC_ALL_MASK, "C", NULL); -#endif - srand(time(NULL)); while (eina_seed == 0) eina_seed = rand(); @@ -355,12 +348,6 @@ eina_init(void) return 1; } -locale_t -_eina_c_locale_get(void) -{ - return _eina_c_locale; -} - EAPI int eina_shutdown(void) { @@ -372,12 +359,6 @@ eina_shutdown(void) _eina_main_count--; if (EINA_UNLIKELY(_eina_main_count == 0)) { -#ifdef _WIN32 - _free_locale(_eina_c_locale); -#else - freelocale(_eina_c_locale); -#endif - eina_log_timing(_eina_log_dom, EINA_LOG_STATE_START, EINA_LOG_STATE_SHUTDOWN); diff --git a/src/lib/eina/eina_private.h b/src/lib/eina/eina_private.h index be826e0fb0..eab59586c1 100644 --- a/src/lib/eina/eina_private.h +++ b/src/lib/eina/eina_private.h @@ -20,7 +20,6 @@ #define EINA_PRIVATE_H_ #include -#include #ifdef _WIN32 # include @@ -152,11 +151,6 @@ Eina_Stringshare *eina_file_sanitize(const char *path); void eina_freeq_main_set(Eina_FreeQ *fq); -#ifdef _WIN32 -typedef _locale_t locale_t; -#endif -locale_t _eina_c_locale_get(void); - #include "eina_inline_private.h" #endif /* EINA_PRIVATE_H_ */ diff --git a/src/tests/eina/eina_test_convert.c b/src/tests/eina/eina_test_convert.c index c8ccfcb772..1b08a00a19 100644 --- a/src/tests/eina/eina_test_convert.c +++ b/src/tests/eina/eina_test_convert.c @@ -160,31 +160,10 @@ _eina_convert_fp_check(double d, Eina_F32p32 fp, int length) } EFL_END_TEST -static void -_eina_convert_strtod_c_check(const char *str, double expected_result) -{ - double result = eina_convert_strtod_c(str, NULL); - - fail_if(result != expected_result); -} - -EFL_START_TEST(eina_convert_strtod_c_simple) -{ - _eina_convert_strtod_c_check("0.0", 0.0); - _eina_convert_strtod_c_check("0.5", 0.5); - _eina_convert_strtod_c_check("1.0", 1.0); - _eina_convert_strtod_c_check("-0.5", -0.5); - _eina_convert_strtod_c_check("-1.0", -1.0); - _eina_convert_strtod_c_check("3.45e-2", 0.0345); - _eina_convert_strtod_c_check("3.45e+2", 345.0); -} -EFL_END_TEST - void eina_test_convert(TCase *tc) { tcase_add_test(tc, eina_convert_simple); tcase_add_test(tc, eina_convert_double); tcase_add_test(tc, eina_convert_fp); - tcase_add_test(tc, eina_convert_strtod_c_simple); }