Export of internal Abseil changes.
-- ffe1bf0e5f98c77cf4193f24ae9ce94d16a72c6e by Alex Strelnikov <strel@google.com>: Remove accidental duplication of conanfile.py. PiperOrigin-RevId: 226926125 -- daf639ddd32c57d1c5ab99b26a9b15107f47ce16 by Derek Mauro <dmauro@google.com>: Fix the CMake build for absl::container. This target is deprecated and will be removed in the future. Fixes https://github.com/abseil/abseil-cpp/pull/238 PiperOrigin-RevId: 226921798 -- b8ab2bb9081c266ced1d966c86d5b19af6b5b3ef by Abseil Team <absl-team@google.com>: Cleanup: Fix some ClangTidy warnings. PiperOrigin-RevId: 226678127 -- 8cdc95316fc8baba00073c38a444c089ed2d5f5e by Abseil Team <absl-team@google.com>: Cleanup: Fix some ClangTidy warnings. PiperOrigin-RevId: 226567814 GitOrigin-RevId: ffe1bf0e5f98c77cf4193f24ae9ce94d16a72c6e Change-Id: Idfe30b8b3229082eb7db4bfa928d3257be7dce1a
This commit is contained in:
parent
7bd8f36c74
commit
01b471d9f3
6 changed files with 5 additions and 95 deletions
|
|
@ -843,8 +843,8 @@ size_t Base64EscapeInternal(const unsigned char* src, size_t szsrc, char* dest,
|
|||
|
||||
// Three bytes of data encodes to four characters of cyphertext.
|
||||
// So we can pump through three-byte chunks atomically.
|
||||
if (szsrc >= 3) { // "limit_src - 3" is UB if szsrc < 3
|
||||
while (cur_src < limit_src - 3) { // as long as we have >= 32 bits
|
||||
if (szsrc >= 3) { // "limit_src - 3" is UB if szsrc < 3.
|
||||
while (cur_src < limit_src - 3) { // While we have >= 32 bits.
|
||||
uint32_t in = absl::big_endian::Load32(cur_src) >> 8;
|
||||
|
||||
cur_dest[0] = base64[in >> 18];
|
||||
|
|
|
|||
|
|
@ -25,12 +25,12 @@ class ArgContext {
|
|||
explicit ArgContext(absl::Span<const FormatArgImpl> pack) : pack_(pack) {}
|
||||
|
||||
// Fill 'bound' with the results of applying the context's argument pack
|
||||
// to the specified 'props'. We synthesize a BoundConversion by
|
||||
// to the specified 'unbound'. We synthesize a BoundConversion by
|
||||
// lining up a UnboundConversion with a user argument. We also
|
||||
// resolve any '*' specifiers for width and precision, so after
|
||||
// this call, 'bound' has all the information it needs to be formatted.
|
||||
// Returns false on failure.
|
||||
bool Bind(const UnboundConversion *props, BoundConversion *bound);
|
||||
bool Bind(const UnboundConversion* unbound, BoundConversion* bound);
|
||||
|
||||
private:
|
||||
absl::Span<const FormatArgImpl> pack_;
|
||||
|
|
|
|||
|
|
@ -27,9 +27,6 @@
|
|||
|
||||
namespace {
|
||||
|
||||
using testing::ElementsAre;
|
||||
using testing::IsEmpty;
|
||||
|
||||
TEST(Strip, ConsumePrefixOneChar) {
|
||||
absl::string_view input("abc");
|
||||
EXPECT_TRUE(absl::ConsumePrefix(&input, "a"));
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue