mirror of
https://github.com/webmproject/libwebp.git
synced 2024-12-27 06:08:21 +01:00
ApplyFiltersAndEncode: only copy lossless stats
this avoids a race with multi-threaded lossy + alpha compression Change-Id: Ie437105f5a899ed28b9c8885b6ca5431092ce8f5
This commit is contained in:
parent
3030f11525
commit
9bc0f922aa
@ -271,7 +271,16 @@ static int ApplyFiltersAndEncode(const uint8_t* alpha, int width, int height,
|
|||||||
reduce_levels, effort_level, NULL, &best);
|
reduce_levels, effort_level, NULL, &best);
|
||||||
}
|
}
|
||||||
if (ok) {
|
if (ok) {
|
||||||
if (stats != NULL) *stats = best.stats;
|
if (stats != NULL) {
|
||||||
|
stats->lossless_features = best.stats.lossless_features;
|
||||||
|
stats->histogram_bits = best.stats.histogram_bits;
|
||||||
|
stats->transform_bits = best.stats.transform_bits;
|
||||||
|
stats->cache_bits = best.stats.cache_bits;
|
||||||
|
stats->palette_size = best.stats.palette_size;
|
||||||
|
stats->lossless_size = best.stats.lossless_size;
|
||||||
|
stats->lossless_hdr_size = best.stats.lossless_hdr_size;
|
||||||
|
stats->lossless_data_size = best.stats.lossless_data_size;
|
||||||
|
}
|
||||||
*output_size = VP8BitWriterSize(&best.bw);
|
*output_size = VP8BitWriterSize(&best.bw);
|
||||||
*output = VP8BitWriterBuf(&best.bw);
|
*output = VP8BitWriterBuf(&best.bw);
|
||||||
} else {
|
} else {
|
||||||
|
Loading…
Reference in New Issue
Block a user