You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by so...@apache.org on 2013/05/16 23:57:58 UTC

[39/47] git commit: TS-1899 Change all strtod() to strtold()

TS-1899 Change all strtod() to strtold()


Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/05d6e32b
Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/05d6e32b
Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/05d6e32b

Branch: refs/heads/sphinx-docs
Commit: 05d6e32bf559a32423f7894b7e65e9acd58392ee
Parents: c3adcce
Author: Leif Hedstrom <zw...@apache.org>
Authored: Wed May 15 14:23:21 2013 -0600
Committer: Leif Hedstrom <zw...@apache.org>
Committed: Wed May 15 14:23:21 2013 -0600

----------------------------------------------------------------------
 mgmt/cli/cliParseArg.cc                   |    5 +++--
 mgmt/cli/createArgument.cc                |    5 +++--
 plugins/experimental/esi/lib/Expression.h |    4 ----
 3 files changed, 6 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/trafficserver/blob/05d6e32b/mgmt/cli/cliParseArg.cc
----------------------------------------------------------------------
diff --git a/mgmt/cli/cliParseArg.cc b/mgmt/cli/cliParseArg.cc
index 744e580..b2a991a 100644
--- a/mgmt/cli/cliParseArg.cc
+++ b/mgmt/cli/cliParseArg.cc
@@ -265,7 +265,8 @@ cliParseArgument(int argc, const char **argv, cli_CommandInfo * commandInfo)
             return TCL_ERROR;
           }
 
-          parsedInfoPtr->arg_float = strtod(argv[srcIndex], &endPtr);
+          // Solaris is messed up, in that strtod() does not honor C99/SUSv3 mode.
+          parsedInfoPtr->arg_float = strtold(argv[srcIndex], &endPtr);
           if ((endPtr == argv[srcIndex]) || (*endPtr != 0)) {
             Tcl_AppendResult(interp, infoPtr->key, " requires floating-point argument",
                              "\n", infoPtr->help, (char *) NULL);
@@ -288,7 +289,7 @@ cliParseArgument(int argc, const char **argv, cli_CommandInfo * commandInfo)
 
         case CLI_ARGV_OPTION_FLOAT_VALUE:
           if (argc > 0) {
-            parsedInfoPtr->arg_float = strtod(argv[srcIndex], &endPtr);
+            parsedInfoPtr->arg_float = strtold(argv[srcIndex], &endPtr);
             if ((endPtr == argv[srcIndex]) || (*endPtr != 0)) {
               parsedInfoPtr->arg_float = CLI_DEFAULT_INT_OR_FLOAT_VALUE;
               parsedInfoPtr->parsed_args = infoPtr->arg_ref;

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/05d6e32b/mgmt/cli/createArgument.cc
----------------------------------------------------------------------
diff --git a/mgmt/cli/createArgument.cc b/mgmt/cli/createArgument.cc
index 1099b5d..e2f4e1b 100644
--- a/mgmt/cli/createArgument.cc
+++ b/mgmt/cli/createArgument.cc
@@ -352,7 +352,8 @@ getFloatRange(char *range, float *r1, float *r2)
       }
       buf[i] = 0;
       if (bound == NEG_BOUND) {
-        *r1 = strtod(buf, &endPtr);
+        // Solaris is messed up, in that strtod() does not honor C99/SUSv3 mode.
+        *r1 = strtold(buf, &endPtr);
         if ((endPtr == buf) || (*endPtr != 0)) {
           Tcl_AppendResult(interp, "negative range is not correct", (char *) NULL);
           ckfree(buf);
@@ -361,7 +362,7 @@ getFloatRange(char *range, float *r1, float *r2)
 
         }
       } else if (bound == POS_BOUND) {
-        *r2 = strtod(buf, &endPtr);
+        *r2 = strtold(buf, &endPtr);
         if ((endPtr == buf) || (*endPtr != 0)) {
           Tcl_AppendResult(interp, "positive range is not correct", (char *) NULL);
           ckfree(buf);

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/05d6e32b/plugins/experimental/esi/lib/Expression.h
----------------------------------------------------------------------
diff --git a/plugins/experimental/esi/lib/Expression.h b/plugins/experimental/esi/lib/Expression.h
index 694ab4b..ad982dc 100644
--- a/plugins/experimental/esi/lib/Expression.h
+++ b/plugins/experimental/esi/lib/Expression.h
@@ -94,11 +94,7 @@ private:
       char *endp;
       const char *str_ptr = str.c_str();
       // Solaris is messed up, in that strtod() does not honor C99/SUSv3 mode.
-#if defined(solaris)
       value = strtold(str_ptr, &endp);
-#else
-      value = strtod(str_ptr, &endp);
-#endif
       return (static_cast<unsigned int>(endp - str_ptr) == str_size);
     }
     return false;