Lines Matching refs:base64
59 Binary Binary::fromBase64(const String& base64, bool* success) { in fromBase64() argument
60 if (base64.isEmpty()) { in fromBase64()
67 if (base64.length() % 4 != 0 || base64.length() + 4 < base64.length()) { in fromBase64()
72 result.reserve(3 * base64.length() / 4); in fromBase64()
75 for (size_t i = 0; i < base64.length(); i += 4) { in fromBase64()
77 if (!DecodeByte(base64[i + 0]).To(&a)) return Binary::fromSpan(nullptr, 0); in fromBase64()
78 if (!DecodeByte(base64[i + 1]).To(&b)) return Binary::fromSpan(nullptr, 0); in fromBase64()
79 if (!DecodeByte(base64[i + 2]).To(&c)) { in fromBase64()
81 if (i + 4 < base64.length() || base64[i + 2] != pad || in fromBase64()
82 base64[i + 3] != pad) { in fromBase64()
86 if (!DecodeByte(base64[i + 3]).To(&d)) { in fromBase64()
88 if (i + 4 < base64.length() || base64[i + 3] != pad) { in fromBase64()
94 if (base64[i + 2] != '=') result.push_back((0xFF & (b << 4)) | (c >> 2)); in fromBase64()
95 if (base64[i + 3] != '=') result.push_back((0xFF & (c << 6)) | d); in fromBase64()