summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPale Moon <git-repo@palemoon.org>2018-07-01 16:35:31 +0200
committerPale Moon <git-repo@palemoon.org>2018-07-01 16:35:31 +0200
commite50a11dfe7bd8920d3bac2ce306fd50a5efa19c6 (patch)
treed5427e207219bb3480cab1108afa6baa1ade0e08
parent1abb23fdfaef17697209632b410a5432f72a71ed (diff)
downloadpalemoon-gre-e50a11dfe7bd8920d3bac2ce306fd50a5efa19c6.tar.gz
Perform some sanity checks on nsMozIconURI.
-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 628eb3153..51bf52448 100644
--- a/image/decoders/icon/nsIconURI.cpp
+++ b/image/decoders/icon/nsIconURI.cpp
@@ -637,7 +637,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;