mirror of
https://github.com/webmproject/libwebp.git
synced 2024-12-27 06:08:21 +01:00
alpha.c: quiet some size_t -> int conversion warnings
Change-Id: I52026a9271bde4028f00df2d752e100c61fd3fe3
This commit is contained in:
parent
03f1f49321
commit
11ae46ae91
@ -30,7 +30,7 @@ extern "C" {
|
|||||||
typedef struct {
|
typedef struct {
|
||||||
int dist; // backward distance (=0 means: literal)
|
int dist; // backward distance (=0 means: literal)
|
||||||
int literal; // literal value (if dist = 0)
|
int literal; // literal value (if dist = 0)
|
||||||
size_t len; // length of matched string for non-literal
|
int len; // length of matched string for non-literal
|
||||||
} Token;
|
} Token;
|
||||||
|
|
||||||
#define MIN_LEN 2
|
#define MIN_LEN 2
|
||||||
@ -50,9 +50,9 @@ typedef struct {
|
|||||||
} \
|
} \
|
||||||
}
|
}
|
||||||
|
|
||||||
static size_t GetLongestMatch(const uint8_t* const data,
|
static int GetLongestMatch(const uint8_t* const data,
|
||||||
const uint8_t* const ref, size_t max_len) {
|
const uint8_t* const ref, int max_len) {
|
||||||
size_t n;
|
int n;
|
||||||
for (n = 0; (n < max_len) && (data[n] == ref[n]); ++n) { /* do nothing */ }
|
for (n = 0; (n < max_len) && (data[n] == ref[n]); ++n) { /* do nothing */ }
|
||||||
return n;
|
return n;
|
||||||
}
|
}
|
||||||
@ -60,10 +60,10 @@ static size_t GetLongestMatch(const uint8_t* const data,
|
|||||||
static int EncodeZlibTCoder(const uint8_t* data, int width, int height,
|
static int EncodeZlibTCoder(const uint8_t* data, int width, int height,
|
||||||
VP8BitWriter* const bw) {
|
VP8BitWriter* const bw) {
|
||||||
int ok = 0;
|
int ok = 0;
|
||||||
const size_t data_size = width * height;
|
const int data_len = width * height;
|
||||||
const size_t MAX_DIST = 3 * width;
|
const int MAX_DIST = 3 * width;
|
||||||
const size_t MAX_LEN = 2 * width;
|
const int MAX_LEN = 2 * width;
|
||||||
Token* const msg = (Token*)malloc(data_size * sizeof(*msg));
|
Token* const msg = (Token*)malloc(data_len * sizeof(*msg));
|
||||||
int num_tokens;
|
int num_tokens;
|
||||||
TCoder* const coder = TCoderNew(MAX_SYMBOLS);
|
TCoder* const coder = TCoderNew(MAX_SYMBOLS);
|
||||||
TCoder* const coderd = TCoderNew(MAX_DIST);
|
TCoder* const coderd = TCoderNew(MAX_DIST);
|
||||||
@ -78,25 +78,23 @@ static int EncodeZlibTCoder(const uint8_t* data, int width, int height,
|
|||||||
|
|
||||||
{
|
{
|
||||||
int deferred_eval = 0;
|
int deferred_eval = 0;
|
||||||
size_t n = 0;
|
int n = 0;
|
||||||
num_tokens = 0;
|
num_tokens = 0;
|
||||||
while (n < data_size) {
|
while (n < data_len) {
|
||||||
const double lit_mode_cost = TCoderSymbolCost(coderd, 0);
|
const double lit_mode_cost = TCoderSymbolCost(coderd, 0);
|
||||||
double cost_cache[MAX_SYMBOLS + 1] = { 0. };
|
double cost_cache[MAX_SYMBOLS + 1] = { 0. };
|
||||||
Token best;
|
Token best;
|
||||||
size_t dist = 0;
|
int dist = 0;
|
||||||
double best_cost = CACHED_COST(coder, data[n]);
|
double best_cost = CACHED_COST(coder, data[n]);
|
||||||
size_t max_len = MAX_LEN;
|
const int max_len = (MAX_LEN > data_len - n) ? data_len - n : MAX_LEN;
|
||||||
if (max_len > data_size - n) {
|
|
||||||
max_len = data_size - n;
|
|
||||||
}
|
|
||||||
best.dist = 0;
|
best.dist = 0;
|
||||||
best.literal = data[n];
|
best.literal = data[n];
|
||||||
best.len = 1;
|
best.len = 1;
|
||||||
for (dist = 1; dist <= MAX_DIST && dist <= n; ++dist) {
|
for (dist = 1; dist <= MAX_DIST && dist <= n; ++dist) {
|
||||||
const size_t pos = n - dist;
|
const int pos = n - dist;
|
||||||
const size_t min_len = best.len - 1;
|
const int min_len = best.len - 1;
|
||||||
size_t len;
|
int len;
|
||||||
|
|
||||||
// Early out: we probe at two locations for a quick match check
|
// Early out: we probe at two locations for a quick match check
|
||||||
if (data[pos] != data[n] ||
|
if (data[pos] != data[n] ||
|
||||||
@ -116,7 +114,7 @@ static int EncodeZlibTCoder(const uint8_t* data, int width, int height,
|
|||||||
// upper-bound (worst-case coding). Deferred evaluation used below
|
// upper-bound (worst-case coding). Deferred evaluation used below
|
||||||
// partially addresses this.
|
// partially addresses this.
|
||||||
double lit_cost = 0;
|
double lit_cost = 0;
|
||||||
size_t i;
|
int i;
|
||||||
for (i = best.len; i < len; ++i) {
|
for (i = best.len; i < len; ++i) {
|
||||||
lit_cost += CACHED_COST(coder, data[n + i]);
|
lit_cost += CACHED_COST(coder, data[n + i]);
|
||||||
}
|
}
|
||||||
@ -359,8 +357,8 @@ int EncodeAlpha(const uint8_t* data, int width, int height, int stride,
|
|||||||
static int DecompressZlibTCoder(VP8BitReader* const br, int width,
|
static int DecompressZlibTCoder(VP8BitReader* const br, int width,
|
||||||
uint8_t* output, size_t output_size) {
|
uint8_t* output, size_t output_size) {
|
||||||
int ok = 0;
|
int ok = 0;
|
||||||
const size_t MAX_DIST = 3 * width;
|
const int MAX_DIST = 3 * width;
|
||||||
const size_t MAX_LEN = 2 * width;
|
const int MAX_LEN = 2 * width;
|
||||||
TCoder* const coder = TCoderNew(MAX_SYMBOLS);
|
TCoder* const coder = TCoderNew(MAX_SYMBOLS);
|
||||||
TCoder* const coderd = TCoderNew(MAX_DIST);
|
TCoder* const coderd = TCoderNew(MAX_DIST);
|
||||||
TCoder* const coderl = TCoderNew(MAX_LEN - MIN_LEN);
|
TCoder* const coderl = TCoderNew(MAX_LEN - MIN_LEN);
|
||||||
|
Loading…
Reference in New Issue
Block a user