diff --git a/vp10/encoder/rdopt.c b/vp10/encoder/rdopt.c
index 16deebf..2b7d8f5 100644
--- a/vp10/encoder/rdopt.c
+++ b/vp10/encoder/rdopt.c
@@ -8063,6 +8063,7 @@
         int_mv backup_mv = frame_mv[NEARMV][ref_frame];
         int_mv cur_mv = mbmi_ext->ref_mv_stack[ref_frame][2].this_mv;
         MB_MODE_INFO backup_mbmi = *mbmi;
+        int backup_skip = x->skip;
 
         int64_t tmp_ref_rd = this_rd;
         int ref_idx;
@@ -8095,6 +8096,7 @@
           int tmp_rate = 0, tmp_rate_y = 0, tmp_rate_uv = 0;
           int tmp_skip = 1;
           int64_t tmp_dist = 0, tmp_sse = 0;
+          int dummy_disable_skip = 0;
 
           cur_mv = mbmi_ext->ref_mv_stack[ref_frame][2 + ref_idx].this_mv;
           lower_mv_precision(&cur_mv.as_mv, cm->allow_high_precision_mv);
@@ -8168,6 +8170,7 @@
 
           if (tmp_ref_rd > tmp_alt_rd) {
             rate2 = tmp_rate;
+            disable_skip = dummy_disable_skip;
             distortion2 = tmp_dist;
             skippable = tmp_skip;
             rate_y = tmp_rate_y;
@@ -8176,6 +8179,7 @@
             this_rd = tmp_alt_rd;
             tmp_ref_rd = tmp_alt_rd;
             backup_mbmi = *mbmi;
+            backup_skip = x->skip;
 #if CONFIG_VAR_TX
             for (i = 0; i < MAX_MB_PLANE; ++i)
               memcpy(x->blk_skip_drl[i], x->blk_skip[i],
@@ -8183,6 +8187,7 @@
 #endif
           } else {
             *mbmi = backup_mbmi;
+            x->skip = backup_skip;
           }
         }
 
