diff --git a/test/test-data.sha1 b/test/test-data.sha1
index d5a116558d8fec2abefafe3171213dbb3616117a..02b43d9e1ea8ad258f32ed84578eb4e4bf93a606 100644
--- a/test/test-data.sha1
+++ b/test/test-data.sha1
@@ -655,6 +655,8 @@ e3ab35d4316c5e81325c50f5236ceca4bc0d35df  vp90-2-15-segkey.webm.md5
 8f46ba5f785d0c2170591a153e0d0d146a7c8090  vp90-2-15-segkey_adpq.webm.md5
 698a6910a97486b833073ef0c0b18d75dce57ee8  vp90-2-16-intra-only.webm
 5661b0168752969f055eec37b05fa9fa947dc7eb  vp90-2-16-intra-only.webm.md5
+c01bb7938f9a9f25e0c37afdec2f2fb73b6cc7fa  vp90-2-17-show-existing-frame.webm
+cc75f351818b9a619818f5cc77b9bc013d0c1e11  vp90-2-17-show-existing-frame.webm.md5
 0321d507ce62dedc8a51b4e9011f7a19aed9c3dc  vp91-2-04-yuv444.webm
 367e423dd41fdb49aa028574a2cfec5c2f325c5c  vp91-2-04-yuv444.webm.md5
 76024eb753cdac6a5e5703aaea189d35c3c30ac7  invalid-vp90-2-00-quantizer-00.webm.ivf.s5861_r01-05_b6-.ivf
diff --git a/test/test.mk b/test/test.mk
index f624649f032e58ca2af574edc02e9f0aa4cb6553..020175db1104335f26bcff184f05663f57fa788a 100644
--- a/test/test.mk
+++ b/test/test.mk
@@ -773,6 +773,8 @@ LIBVPX_TEST_DATA-$(CONFIG_VP9_DECODER) += vp90-2-15-segkey_adpq.webm
 LIBVPX_TEST_DATA-$(CONFIG_VP9_DECODER) += vp90-2-15-segkey_adpq.webm.md5
 LIBVPX_TEST_DATA-$(CONFIG_VP9_DECODER) += vp90-2-16-intra-only.webm
 LIBVPX_TEST_DATA-$(CONFIG_VP9_DECODER) += vp90-2-16-intra-only.webm.md5
+LIBVPX_TEST_DATA-$(CONFIG_VP9_DECODER) += vp90-2-17-show-existing-frame.webm
+LIBVPX_TEST_DATA-$(CONFIG_VP9_DECODER) += vp90-2-17-show-existing-frame.webm.md5
 LIBVPX_TEST_DATA-$(CONFIG_VP9_DECODER) += vp91-2-04-yuv444.webm
 LIBVPX_TEST_DATA-$(CONFIG_VP9_DECODER) += vp91-2-04-yuv444.webm.md5
 
diff --git a/test/test_vectors.cc b/test/test_vectors.cc
index 495588715f44718f8797779a69b003a932ee17ee..4ea4b9dab74b71a2d0cbe28520d8dfcef472a4f7 100644
--- a/test/test_vectors.cc
+++ b/test/test_vectors.cc
@@ -180,7 +180,7 @@ const char *const kVP9TestVectors[] = {
   "vp90-2-14-resize-fp-tiles-8-16.webm", "vp90-2-14-resize-fp-tiles-8-1.webm",
   "vp90-2-14-resize-fp-tiles-8-2.webm", "vp90-2-14-resize-fp-tiles-8-4.webm",
   "vp90-2-15-segkey.webm", "vp90-2-15-segkey_adpq.webm",
-  "vp90-2-16-intra-only.webm",
+  "vp90-2-16-intra-only.webm", "vp90-2-17-show-existing-frame.webm",
   "vp91-2-04-yuv444.webm",
 };
 const int kNumVP9TestVectors = NELEMENTS(kVP9TestVectors);
diff --git a/vp9/decoder/vp9_decoder.c b/vp9/decoder/vp9_decoder.c
index e32637b06fc1635c5e8858b7b871497b96727bf4..0343c214c03e8b35f6f9216f2e70cdb00760052a 100644
--- a/vp9/decoder/vp9_decoder.c
+++ b/vp9/decoder/vp9_decoder.c
@@ -268,10 +268,7 @@ int vp9_receive_compressed_data(VP9Decoder *pbi,
 
   vp9_decode_frame(pbi, source, source + size, psource);
 
-  if (!cm->show_existing_frame)
-    swap_frame_buffers(pbi);
-  else
-    cm->frame_to_show = get_frame_new_buffer(cm);
+  swap_frame_buffers(pbi);
 
   vp9_clear_system_state();