summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--image/decoders/icon/nsIconURI.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/image/decoders/icon/nsIconURI.cpp b/image/decoders/icon/nsIconURI.cpp
index 632a733fe..473ded218 100644
--- a/image/decoders/icon/nsIconURI.cpp
+++ b/image/decoders/icon/nsIconURI.cpp
@@ -688,7 +688,17 @@ nsMozIconURI::Deserialize(const URIParams& aParams)
mContentType = params.contentType();
mFileName = params.fileName();
mStockIcon = params.stockIcon();
+
+ if (params.iconSize() < -1 ||
+ params.iconSize() >= (int32_t) ArrayLength(kSizeStrings)) {
+ return false;
+ }
mIconSize = params.iconSize();
+
+ if (params.iconState() < -1 ||
+ params.iconState() >= (int32_t) ArrayLength(kStateStrings)) {
+ return false;
+ }
mIconState = params.iconState();
return true;