diff --git a/libswscale/ops.c b/libswscale/ops.c index 04568811d3..31bb2bdec4 100644 --- a/libswscale/ops.c +++ b/libswscale/ops.c @@ -144,11 +144,11 @@ SwsCompMask ff_sws_comp_mask_q4(const AVRational q[4]) return mask; } -SwsCompMask ff_sws_comp_mask_swizzle(const SwsCompMask mask, const SwsSwizzleOp swiz) +SwsCompMask ff_sws_comp_mask_swizzle(const SwsCompMask mask, const SwsSwizzleOp *swiz) { SwsCompMask res = 0; for (int i = 0; i < 4; i++) { - const int src = swiz.in[i]; + const int src = swiz->in[i]; if (SWS_COMP_TEST(mask, src)) res |= SWS_COMP(i); } diff --git a/libswscale/ops.h b/libswscale/ops.h index 8002eca8c1..41755f35f4 100644 --- a/libswscale/ops.h +++ b/libswscale/ops.h @@ -146,7 +146,7 @@ typedef struct SwsSwizzleOp { } SwsSwizzleOp; #define SWS_SWIZZLE(X,Y,Z,W) ((SwsSwizzleOp) { .in = {X, Y, Z, W} }) -SwsCompMask ff_sws_comp_mask_swizzle(SwsCompMask mask, SwsSwizzleOp swiz); +SwsCompMask ff_sws_comp_mask_swizzle(SwsCompMask mask, const SwsSwizzleOp *swiz); typedef struct SwsShiftOp { uint8_t amount; /* number of bits to shift */ diff --git a/libswscale/ops_optimizer.c b/libswscale/ops_optimizer.c index aa4e8ff408..69973b63ce 100644 --- a/libswscale/ops_optimizer.c +++ b/libswscale/ops_optimizer.c @@ -61,7 +61,7 @@ static bool op_commute_clear(SwsOp *op, SwsOp *next) op->type = next->filter.type; return true; case SWS_OP_SWIZZLE: - op->clear.mask = ff_sws_comp_mask_swizzle(op->clear.mask, next->swizzle); + op->clear.mask = ff_sws_comp_mask_swizzle(op->clear.mask, &next->swizzle); ff_sws_apply_op_q(next, op->clear.value); return true; case SWS_OP_SWAP_BYTES: