summaryrefslogtreecommitdiff
path: root/image/decoders
diff options
context:
space:
mode:
authorPale Moon <git-repo@palemoon.org>2018-05-05 12:20:42 +0200
committerwolfbeast <mcwerewolf@gmail.com>2018-06-07 06:24:53 +0200
commit5736dbea0243aeeac6b1bf40583a2c9c53420fc6 (patch)
treeb866ac4ff5315484ce850cff7b9f41c53c76dc80 /image/decoders
parent40f38270ccd3e435111349b304830fae40fcda66 (diff)
downloaduxp-5736dbea0243aeeac6b1bf40583a2c9c53420fc6.tar.gz
Perform some sanity checks on nsMozIconURI.
Diffstat (limited to 'image/decoders')
-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 632a733fe9..473ded218c 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;