diff --git a/Base/res/html/misc/gifsuite.html b/Base/res/html/misc/gifsuite.html
index a1c1766392..fb9756561c 100644
--- a/Base/res/html/misc/gifsuite.html
+++ b/Base/res/html/misc/gifsuite.html
@@ -140,6 +140,42 @@
Transparent gif with 4 transparent frames, loops forever, restore previous |
+
+  |
+  |
+  |
+  |
+  |
+
+ Erroneous test case: frame out-of-bounds.
+ The first frame is located at offset (200,0) and so is wholly outside of the bounds of the 100x100 GIF.
+ The last frame is partially out of bounds, located at (60,60) and of size (50,50).
+
+ Note that the GIF specification is unclear on what to do if a frame extends past the logical
+ screen of the GIF, therefore different renderers behave differently here:
+
+
+ - Firefox, ImageMagick: don't expand logical screen, render unwritten pixels as transparent
+ (this is what the reference frames show)
+
- Chrome, Edge, IE11: expand logical screen, render unwritten pixels as transparent
+
- Safari: don't expand logical screen, render unwritten pixels as GIF background colour
+
+ |
+
+
+
+  |
+ N/A |
+ N/A |
+ N/A |
+ N/A |
+
+ Erroneous test case:. Final frame contains bad LZW data and will fail to decode.
+ Decoder implementations are not under any obligation to render anything useful here, however they
+ should fail gracefully and not crash.
+ |
+
+
diff --git a/Base/res/html/misc/gifsuite_files/animated_transparent_loop_frames_out_of_bounds-0.png b/Base/res/html/misc/gifsuite_files/animated_transparent_loop_frames_out_of_bounds-0.png
new file mode 100644
index 0000000000..1388953be1
Binary files /dev/null and b/Base/res/html/misc/gifsuite_files/animated_transparent_loop_frames_out_of_bounds-0.png differ
diff --git a/Base/res/html/misc/gifsuite_files/animated_transparent_loop_frames_out_of_bounds-1.png b/Base/res/html/misc/gifsuite_files/animated_transparent_loop_frames_out_of_bounds-1.png
new file mode 100644
index 0000000000..e686ab7262
Binary files /dev/null and b/Base/res/html/misc/gifsuite_files/animated_transparent_loop_frames_out_of_bounds-1.png differ
diff --git a/Base/res/html/misc/gifsuite_files/animated_transparent_loop_frames_out_of_bounds-2.png b/Base/res/html/misc/gifsuite_files/animated_transparent_loop_frames_out_of_bounds-2.png
new file mode 100644
index 0000000000..f0b026083a
Binary files /dev/null and b/Base/res/html/misc/gifsuite_files/animated_transparent_loop_frames_out_of_bounds-2.png differ
diff --git a/Base/res/html/misc/gifsuite_files/animated_transparent_loop_frames_out_of_bounds-3.png b/Base/res/html/misc/gifsuite_files/animated_transparent_loop_frames_out_of_bounds-3.png
new file mode 100644
index 0000000000..57ddb97f29
Binary files /dev/null and b/Base/res/html/misc/gifsuite_files/animated_transparent_loop_frames_out_of_bounds-3.png differ
diff --git a/Base/res/html/misc/gifsuite_files/animated_transparent_loop_frames_out_of_bounds.gif b/Base/res/html/misc/gifsuite_files/animated_transparent_loop_frames_out_of_bounds.gif
new file mode 100644
index 0000000000..0abc0ff540
Binary files /dev/null and b/Base/res/html/misc/gifsuite_files/animated_transparent_loop_frames_out_of_bounds.gif differ
diff --git a/Base/res/html/misc/gifsuite_files/bad_lzw_data.gif b/Base/res/html/misc/gifsuite_files/bad_lzw_data.gif
new file mode 100644
index 0000000000..a0a3debe5b
Binary files /dev/null and b/Base/res/html/misc/gifsuite_files/bad_lzw_data.gif differ