Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1273)

Unified Diff: third_party/brotli/dec/bit_reader.c

Issue 960873002: Update from https://crrev.com/318214 (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « third_party/brotli/dec/bit_reader.h ('k') | third_party/brotli/dec/context.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/brotli/dec/bit_reader.c
diff --git a/third_party/brotli/dec/bit_reader.c b/third_party/brotli/dec/bit_reader.c
new file mode 100644
index 0000000000000000000000000000000000000000..981dccf5e6723db8d541c01f983c767f07a2a4d7
--- /dev/null
+++ b/third_party/brotli/dec/bit_reader.c
@@ -0,0 +1,50 @@
+/* Copyright 2013 Google Inc. All Rights Reserved.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ Bit reading helpers
+*/
+
+#include <assert.h>
+#include <stdlib.h>
+
+#include "./bit_reader.h"
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+int BrotliInitBitReader(BrotliBitReader* const br, BrotliInput input) {
+ size_t i;
+ assert(br != NULL);
+
+ br->buf_ptr_ = br->buf_;
+ br->input_ = input;
+ br->val_ = 0;
+ br->pos_ = 0;
+ br->bit_pos_ = 0;
+ br->bit_end_pos_ = 0;
+ br->eos_ = 0;
+ if (!BrotliReadMoreInput(br)) {
+ return 0;
+ }
+ for (i = 0; i < sizeof(br->val_); ++i) {
+ br->val_ |= ((uint64_t)br->buf_[br->pos_]) << (8 * i);
+ ++br->pos_;
+ }
+ return (br->bit_end_pos_ > 0);
+}
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
« no previous file with comments | « third_party/brotli/dec/bit_reader.h ('k') | third_party/brotli/dec/context.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698