Commit d36a4234 authored by Clément Bœsch's avatar Clément Bœsch

Merge commit '6b527629'

* commit '6b527629':
  error_resilience: Change type of array stride parameters to ptrdiff_t
Merged-by: 's avatarClément Bœsch <u@pkh.me>
parents 100026be 6b527629
...@@ -42,7 +42,7 @@ ...@@ -42,7 +42,7 @@
* @param stride the number of MVs to get to the next row * @param stride the number of MVs to get to the next row
* @param mv_step the number of MVs per row or column in a macroblock * @param mv_step the number of MVs per row or column in a macroblock
*/ */
static void set_mv_strides(ERContext *s, int *mv_step, int *stride) static void set_mv_strides(ERContext *s, ptrdiff_t *mv_step, ptrdiff_t *stride)
{ {
if (s->avctx->codec_id == AV_CODEC_ID_H264) { if (s->avctx->codec_id == AV_CODEC_ID_H264) {
av_assert0(s->quarter_sample); av_assert0(s->quarter_sample);
...@@ -95,7 +95,7 @@ static void put_dc(ERContext *s, uint8_t *dest_y, uint8_t *dest_cb, ...@@ -95,7 +95,7 @@ static void put_dc(ERContext *s, uint8_t *dest_y, uint8_t *dest_cb,
} }
} }
static void filter181(int16_t *data, int width, int height, int stride) static void filter181(int16_t *data, int width, int height, ptrdiff_t stride)
{ {
int x, y; int x, y;
...@@ -137,7 +137,7 @@ static void filter181(int16_t *data, int width, int height, int stride) ...@@ -137,7 +137,7 @@ static void filter181(int16_t *data, int width, int height, int stride)
* @param h height in 8 pixel blocks * @param h height in 8 pixel blocks
*/ */
static void guess_dc(ERContext *s, int16_t *dc, int w, static void guess_dc(ERContext *s, int16_t *dc, int w,
int h, int stride, int is_luma) int h, ptrdiff_t stride, int is_luma)
{ {
int b_x, b_y; int b_x, b_y;
int16_t (*col )[4] = av_malloc_array(stride, h*sizeof( int16_t)*4); int16_t (*col )[4] = av_malloc_array(stride, h*sizeof( int16_t)*4);
...@@ -240,9 +240,10 @@ fail: ...@@ -240,9 +240,10 @@ fail:
* @param h height in 8 pixel blocks * @param h height in 8 pixel blocks
*/ */
static void h_block_filter(ERContext *s, uint8_t *dst, int w, static void h_block_filter(ERContext *s, uint8_t *dst, int w,
int h, int stride, int is_luma) int h, ptrdiff_t stride, int is_luma)
{ {
int b_x, b_y, mvx_stride, mvy_stride; int b_x, b_y;
ptrdiff_t mvx_stride, mvy_stride;
const uint8_t *cm = ff_crop_tab + MAX_NEG_CROP; const uint8_t *cm = ff_crop_tab + MAX_NEG_CROP;
set_mv_strides(s, &mvx_stride, &mvy_stride); set_mv_strides(s, &mvx_stride, &mvy_stride);
mvx_stride >>= is_luma; mvx_stride >>= is_luma;
...@@ -308,9 +309,10 @@ static void h_block_filter(ERContext *s, uint8_t *dst, int w, ...@@ -308,9 +309,10 @@ static void h_block_filter(ERContext *s, uint8_t *dst, int w,
* @param h height in 8 pixel blocks * @param h height in 8 pixel blocks
*/ */
static void v_block_filter(ERContext *s, uint8_t *dst, int w, int h, static void v_block_filter(ERContext *s, uint8_t *dst, int w, int h,
int stride, int is_luma) ptrdiff_t stride, int is_luma)
{ {
int b_x, b_y, mvx_stride, mvy_stride; int b_x, b_y;
ptrdiff_t mvx_stride, mvy_stride;
const uint8_t *cm = ff_crop_tab + MAX_NEG_CROP; const uint8_t *cm = ff_crop_tab + MAX_NEG_CROP;
set_mv_strides(s, &mvx_stride, &mvy_stride); set_mv_strides(s, &mvx_stride, &mvy_stride);
mvx_stride >>= is_luma; mvx_stride >>= is_luma;
...@@ -390,11 +392,12 @@ static void guess_mv(ERContext *s) ...@@ -390,11 +392,12 @@ static void guess_mv(ERContext *s)
{ {
int (*blocklist)[2], (*next_blocklist)[2]; int (*blocklist)[2], (*next_blocklist)[2];
uint8_t *fixed; uint8_t *fixed;
const int mb_stride = s->mb_stride; const ptrdiff_t mb_stride = s->mb_stride;
const int mb_width = s->mb_width; const int mb_width = s->mb_width;
int mb_height = s->mb_height; int mb_height = s->mb_height;
int i, depth, num_avail; int i, depth, num_avail;
int mb_x, mb_y, mot_step, mot_stride; int mb_x, mb_y;
ptrdiff_t mot_step, mot_stride;
int blocklist_length, next_blocklist_length; int blocklist_length, next_blocklist_length;
if (s->last_pic.f && s->last_pic.f->data[0]) if (s->last_pic.f && s->last_pic.f->data[0])
......
...@@ -57,8 +57,8 @@ typedef struct ERContext { ...@@ -57,8 +57,8 @@ typedef struct ERContext {
int *mb_index2xy; int *mb_index2xy;
int mb_num; int mb_num;
int mb_width, mb_height; int mb_width, mb_height;
int mb_stride; ptrdiff_t mb_stride;
int b8_stride; ptrdiff_t b8_stride;
volatile int error_count; volatile int error_count;
int error_occurred; int error_occurred;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment