diff --git a/libavcodec/vp8.c b/libavcodec/vp8.c
index 6547eb90a557ead3301ed7fb5801dfcaca8e64ba..79c401d354e2a9ea4607c460b96292f887427803 100644
--- a/libavcodec/vp8.c
+++ b/libavcodec/vp8.c
@@ -2755,7 +2755,7 @@ static av_cold int vp8_decode_init_thread_copy(AVCodecContext *avctx)
     return 0;
 }
 
-#define REBASE(pic) pic ? pic - &s_src->frames[0] + &s->frames[0] : NULL
+#define REBASE(pic) ((pic) ? (pic) - &s_src->frames[0] + &s->frames[0] : NULL)
 
 static int vp8_decode_update_thread_context(AVCodecContext *dst,
                                             const AVCodecContext *src)
diff --git a/libavcodec/vp8dsp.c b/libavcodec/vp8dsp.c
index f2a7f32079746c23eca9e5d09a22bc142a5cfd6a..e1a91bb8c607bdc6f716cf83c010c34a89fb8436 100644
--- a/libavcodec/vp8dsp.c
+++ b/libavcodec/vp8dsp.c
@@ -254,7 +254,7 @@ MK_IDCT_DC_ADD4_C(vp8)
     int av_unused q2 = p[ 2 * stride];                                        \
     int av_unused q3 = p[ 3 * stride];
 
-#define clip_int8(n) (cm[n + 0x80] - 0x80)
+#define clip_int8(n) (cm[(n) + 0x80] - 0x80)
 
 static av_always_inline void filter_common(uint8_t *p, ptrdiff_t stride,
                                            int is4tap, int is_vp7)