use real strtof and snprintf to parse and dump floats
git-svn-id: http://skia.googlecode.com/svn/trunk@369 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/src/utils/SkParsePath.cpp b/src/utils/SkParsePath.cpp
index df98436..2e8921d 100644
--- a/src/utils/SkParsePath.cpp
+++ b/src/utils/SkParsePath.cpp
@@ -181,8 +181,14 @@
#include "SkStream.h"
static void write_scalar(SkWStream* stream, SkScalar value) {
+#ifdef SK_SCALAR_IS_FLOAT
+ char buffer[64];
+ int len = snprintf(buffer, sizeof(buffer), "%g", value);
+ char* stop = buffer + len;
+#else
char buffer[SkStrAppendScalar_MaxSize];
char* stop = SkStrAppendScalar(buffer, value);
+#endif
stream->write(buffer, stop - buffer);
}
@@ -191,10 +197,7 @@
stream->write(&verb, 1);
write_scalar(stream, data[0]);
for (int i = 1; i < count; i++) {
- if (data[i] >= 0) {
- // can skip the separater if data[i] is negative
- stream->write(" ", 1);
- }
+ stream->write(" ", 1);
write_scalar(stream, data[i]);
}
}