diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2017-11-26 11:42:28 +0000 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2017-11-26 11:42:28 +0000 |
commit | 89c6c06b8c42107dd231687a1012354e7d3039fc (patch) | |
tree | dad94f4da8a6694f3cb99f7048be2f9cf5f78f97 /app-text/poppler/files/poppler-0.57.0-CVE-2017-14928.patch | |
parent | 796cae72cf9ed18ba01256ac1f83a686a2a76036 (diff) |
gentoo resync : 26.11.2017
Diffstat (limited to 'app-text/poppler/files/poppler-0.57.0-CVE-2017-14928.patch')
-rw-r--r-- | app-text/poppler/files/poppler-0.57.0-CVE-2017-14928.patch | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14928.patch b/app-text/poppler/files/poppler-0.57.0-CVE-2017-14928.patch new file mode 100644 index 000000000000..bd2af863423b --- /dev/null +++ b/app-text/poppler/files/poppler-0.57.0-CVE-2017-14928.patch @@ -0,0 +1,69 @@ +From 6bf7212c44d0131c8f8227a4a4dadc52a3afebd9 Mon Sep 17 00:00:00 2001 +From: Albert Astals Cid <aacid@kde.org> +Date: Fri, 8 Sep 2017 18:29:42 +0200 +Subject: [PATCH 1/3] Annot: Fix crash on broken files + +Bug #102607 + +(cherry picked from commit 1316c7a41f4dd7276f404f775ebb5fef2d24ab1c) +--- + poppler/Annot.cc | 42 +++++++++++++++++++++++------------------- + 1 file changed, 23 insertions(+), 19 deletions(-) + +diff --git a/poppler/Annot.cc b/poppler/Annot.cc +index 974b098b..27b698db 100644 +--- a/poppler/Annot.cc ++++ b/poppler/Annot.cc +@@ -6982,26 +6982,30 @@ AnnotRichMedia::Configuration::Configuration(Dict *dict) + } else if (!strcmp(name, "Video")) { + type = typeVideo; + } else { +- // determine from first instance ++ // determine from first non null instance ++ type = typeFlash; // default in case all instances are null + if (instances && nInstances > 0) { +- AnnotRichMedia::Instance *instance = instances[0]; +- switch (instance->getType()) { +- case AnnotRichMedia::Instance::type3D: +- type = type3D; +- break; +- case AnnotRichMedia::Instance::typeFlash: +- type = typeFlash; +- break; +- case AnnotRichMedia::Instance::typeSound: +- type = typeSound; +- break; +- case AnnotRichMedia::Instance::typeVideo: +- type = typeVideo; +- break; +- default: +- type = typeFlash; +- break; +- } ++ for (int i = 0; i < nInstances; ++i) { ++ AnnotRichMedia::Instance *instance = instances[i]; ++ if (instance) { ++ switch (instance->getType()) { ++ case AnnotRichMedia::Instance::type3D: ++ type = type3D; ++ break; ++ case AnnotRichMedia::Instance::typeFlash: ++ type = typeFlash; ++ break; ++ case AnnotRichMedia::Instance::typeSound: ++ type = typeSound; ++ break; ++ case AnnotRichMedia::Instance::typeVideo: ++ type = typeVideo; ++ break; ++ } ++ // break the loop since we found the first non null instance ++ break; ++ } ++ } + } + } + } +-- +2.14.1 + |