diff --git a/src/ImageSharp/Formats/Gif/GifDecoderCore.cs b/src/ImageSharp/Formats/Gif/GifDecoderCore.cs
index de5aa78843..e0d8b3cd96 100644
--- a/src/ImageSharp/Formats/Gif/GifDecoderCore.cs
+++ b/src/ImageSharp/Formats/Gif/GifDecoderCore.cs
@@ -6,7 +6,7 @@ using System.IO;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Text;
-using SixLabors.ImageSharp.Advanced;
+
using SixLabors.ImageSharp.Memory;
using SixLabors.ImageSharp.Metadata;
using SixLabors.ImageSharp.PixelFormats;
@@ -101,7 +101,7 @@ namespace SixLabors.ImageSharp.Formats.Gif
/// Decodes the stream to the image.
///
/// The pixel format.
- /// The stream containing image data.
+ /// The stream containing image data.
/// The decoded image
public Image Decode(Stream stream)
where TPixel : unmanaged, IPixel
@@ -241,6 +241,10 @@ namespace SixLabors.ImageSharp.Formats.Gif
this.stream.Read(this.buffer, 0, 9);
this.imageDescriptor = GifImageDescriptor.Parse(this.buffer);
+ if (this.imageDescriptor.Height == 0 || this.imageDescriptor.Width == 0)
+ {
+ GifThrowHelper.ThrowInvalidImageContentException("Width or height should not be 0");
+ }
}
///