Index: src/core/SkString.cpp |
diff --git a/src/core/SkString.cpp b/src/core/SkString.cpp |
index 9331665dcbcd4656f1a7e29d907926bc3883de54..24b1b8fb6229f01d251529348c17956a29ccf1e7 100644 |
--- a/src/core/SkString.cpp |
+++ b/src/core/SkString.cpp |
@@ -32,56 +32,6 @@ |
SkASSERT(written >= 0 && written < SkToInt(size)); \ |
va_end(args); \ |
} while (0) |
- |
-#ifdef SK_BUILD_FOR_WIN |
-#define V_SKSTRING_PRINTF(output, format) \ |
- do { \ |
- va_list args; \ |
- va_start(args, format); \ |
- char buffer[kBufferSize]; \ |
- int length = _vsnprintf_s(buffer, sizeof(buffer), \ |
- _TRUNCATE, format, args); \ |
- va_end(args); \ |
- if (length >= 0 && length < (int)sizeof(buffer)) { \ |
- output.set(buffer, length); \ |
- break; \ |
- } \ |
- va_start(args, format); \ |
- length = _vscprintf(format, args); \ |
- va_end(args); \ |
- output.resize((size_t)length); \ |
- va_start(args, format); \ |
- SkDEBUGCODE(int check = ) _vsnprintf_s(output.writable_str(), \ |
- length + 1, _TRUNCATE, \ |
- format, args); \ |
- va_end(args); \ |
- SkASSERT(check == length); \ |
- SkASSERT(output[length] == '\0'); \ |
- } while (false) |
-#else |
-#define V_SKSTRING_PRINTF(output, format) \ |
- do { \ |
- va_list args; \ |
- va_start(args, format); \ |
- char buffer[kBufferSize]; \ |
- int length = vsnprintf(buffer, sizeof(buffer), format, args); \ |
- va_end(args); \ |
- if (length < 0) { \ |
- break; \ |
- } \ |
- if (length < (int)sizeof(buffer)) { \ |
- output.set(buffer, length); \ |
- break; \ |
- } \ |
- output.resize((size_t)length); \ |
- va_start(args, format); \ |
- SkDEBUGCODE(int check = ) vsnprintf(output.writable_str(), \ |
- length + 1, format, args); \ |
- va_end(args); \ |
- SkASSERT(check == length); \ |
- SkASSERT(output[length] == '\0'); \ |
- } while (false) |
-#endif |
/////////////////////////////////////////////////////////////////////////////// |
@@ -563,7 +513,11 @@ |
} |
void SkString::printf(const char format[], ...) { |
- V_SKSTRING_PRINTF((*this), format); |
+ char buffer[kBufferSize]; |
+ int length; |
+ ARGS_TO_BUFFER(format, buffer, kBufferSize, length); |
+ |
+ this->set(buffer, length); |
} |
void SkString::appendf(const char format[], ...) { |
@@ -639,7 +593,10 @@ |
SkString SkStringPrintf(const char* format, ...) { |
SkString formattedOutput; |
- V_SKSTRING_PRINTF(formattedOutput, format); |
+ char buffer[kBufferSize]; |
+ SK_UNUSED int length; |
+ ARGS_TO_BUFFER(format, buffer, kBufferSize, length); |
+ formattedOutput.set(buffer); |
return formattedOutput; |
} |