Index: src/pdf/SkPDFTypes.cpp |
diff --git a/src/pdf/SkPDFTypes.cpp b/src/pdf/SkPDFTypes.cpp |
index e80d1186c38dc3e507604dd239e8570eec3653b0..e94a46cfc22cac4cc0f9cc48016b150a4c1073b6 100644 |
--- a/src/pdf/SkPDFTypes.cpp |
+++ b/src/pdf/SkPDFTypes.cpp |
@@ -133,10 +133,6 @@ SkPDFString::SkPDFString(const SkString& value) |
: fValue(FormatString(value.c_str(), value.size())) { |
} |
-SkPDFString::SkPDFString(const uint16_t* value, size_t len, bool wideChars) |
- : fValue(FormatString(value, len, wideChars)) { |
-} |
- |
SkPDFString::~SkPDFString() {} |
void SkPDFString::emitObject(SkWStream* stream, |
@@ -146,67 +142,35 @@ void SkPDFString::emitObject(SkWStream* stream, |
} |
// static |
-SkString SkPDFString::FormatString(const char* input, size_t len) { |
- return DoFormatString(input, len, false, false); |
-} |
- |
-SkString SkPDFString::FormatString(const uint16_t* input, size_t len, |
- bool wideChars) { |
- return DoFormatString(input, len, true, wideChars); |
-} |
- |
-// static |
-SkString SkPDFString::DoFormatString(const void* input, size_t len, |
- bool wideInput, bool wideOutput) { |
+SkString SkPDFString::FormatString(const char* cin, size_t len) { |
SkASSERT(len <= kMaxLen); |
- const uint16_t* win = (const uint16_t*) input; |
- const char* cin = (const char*) input; |
- |
- if (wideOutput) { |
- SkASSERT(wideInput); |
- SkString result; |
- result.append("<"); |
- for (size_t i = 0; i < len; i++) { |
- result.appendHex(win[i], 4); |
- } |
- result.append(">"); |
- return result; |
- } |
// 7-bit clean is a heuristic to decide what string format to use; |
// a 7-bit clean string should require little escaping. |
bool sevenBitClean = true; |
for (size_t i = 0; i < len; i++) { |
- SkASSERT(!wideInput || !(win[i] & ~0xFF)); |
- char val = wideInput ? win[i] : cin[i]; |
- if (val > '~' || val < ' ') { |
+ if (cin[i] > '~' || cin[i] < ' ') { |
sevenBitClean = false; |
break; |
} |
} |
- |
SkString result; |
if (sevenBitClean) { |
result.append("("); |
for (size_t i = 0; i < len; i++) { |
- SkASSERT(!wideInput || !(win[i] & ~0xFF)); |
- char val = wideInput ? win[i] : cin[i]; |
- if (val == '\\' || val == '(' || val == ')') { |
+ if (cin[i] == '\\' || cin[i] == '(' || cin[i] == ')') { |
result.append("\\"); |
} |
- result.append(&val, 1); |
+ result.append(&cin[i], 1); |
} |
result.append(")"); |
} else { |
result.append("<"); |
for (size_t i = 0; i < len; i++) { |
- SkASSERT(!wideInput || !(win[i] & ~0xFF)); |
- unsigned char val = wideInput ? win[i] : cin[i]; |
- result.appendHex(val, 2); |
+ result.appendHex(static_cast<unsigned char>(cin[i]), 2); |
} |
result.append(">"); |
} |
- |
return result; |
} |