aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/pdf/SkPDFUtils.h
diff options
context:
space:
mode:
authorGravatar Hal Canary <halcanary@google.com>2017-06-17 10:38:13 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-06-19 15:56:33 +0000
commitd6e6e6699a85c6ed79e7d3b01e30d19e361ae049 (patch)
tree629683240e1596e0adfdc9d659f2687fe8a62cab /src/pdf/SkPDFUtils.h
parent6d28730b2b13876601dec60caf49ba89e29c6fad (diff)
factor out hexadecimal constants.
Now we don't have to rely on the linker to de-duplicate so many gHex[] constants. Change-Id: Ia86d3a92648415afdb8d29499b4faded5ed05c7d Reviewed-on: https://skia-review.googlesource.com/20180 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Ben Wagner <bungeman@google.com>
Diffstat (limited to 'src/pdf/SkPDFUtils.h')
-rw-r--r--src/pdf/SkPDFUtils.h17
1 files changed, 8 insertions, 9 deletions
diff --git a/src/pdf/SkPDFUtils.h b/src/pdf/SkPDFUtils.h
index c1d9a72250..58453ae4d1 100644
--- a/src/pdf/SkPDFUtils.h
+++ b/src/pdf/SkPDFUtils.h
@@ -79,21 +79,20 @@ void AppendScalar(SkScalar value, SkWStream* stream);
void WriteString(SkWStream* wStream, const char* input, size_t len);
inline void WriteUInt16BE(SkDynamicMemoryWStream* wStream, uint16_t value) {
- static const char gHex[] = "0123456789ABCDEF";
char result[4];
- result[0] = gHex[ value >> 12 ];
- result[1] = gHex[0xF & (value >> 8 )];
- result[2] = gHex[0xF & (value >> 4 )];
- result[3] = gHex[0xF & (value )];
+ result[0] = SkHexadecimalDigits::gUpper[ value >> 12 ];
+ result[1] = SkHexadecimalDigits::gUpper[0xF & (value >> 8 )];
+ result[2] = SkHexadecimalDigits::gUpper[0xF & (value >> 4 )];
+ result[3] = SkHexadecimalDigits::gUpper[0xF & (value )];
wStream->write(result, 4);
}
+
inline void WriteUInt8(SkDynamicMemoryWStream* wStream, uint8_t value) {
- static const char gHex[] = "0123456789ABCDEF";
- char result[2];
- result[0] = gHex[value >> 4 ];
- result[1] = gHex[0xF & value];
+ char result[2] = { SkHexadecimalDigits::gUpper[value >> 4],
+ SkHexadecimalDigits::gUpper[value & 0xF] };
wStream->write(result, 2);
}
+
inline void WriteUTF16beHex(SkDynamicMemoryWStream* wStream, SkUnichar utf32) {
uint16_t utf16[2] = {0, 0};
size_t len = SkUTF16_FromUnichar(utf32, utf16);