diff options
author | CoprDistGit <infra@openeuler.org> | 2024-12-23 05:51:32 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2024-12-23 05:51:32 +0000 |
commit | 90c29fe56a500617a12382e3adbca9678e081dca (patch) | |
tree | 5bd2ffea96ff45d97e3d642ac5ffcb74154d985d /backport-CVE-2022-37051.patch | |
parent | 9787699c53437c0b1aaab2d2c83e63b4c8454482 (diff) |
automatic import of poppler
Diffstat (limited to 'backport-CVE-2022-37051.patch')
-rw-r--r-- | backport-CVE-2022-37051.patch | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/backport-CVE-2022-37051.patch b/backport-CVE-2022-37051.patch new file mode 100644 index 0000000..9c05c3e --- /dev/null +++ b/backport-CVE-2022-37051.patch @@ -0,0 +1,46 @@ +From 4631115647c1e4f0482ffe0491c2f38d2231337b Mon Sep 17 00:00:00 2001 +From: crt <chluo@cse.cuhk.edu.hk> +Date: Fri, 29 Jul 2022 20:51:11 +0000 +Subject: [PATCH] Check isDict before calling getDict + +Issue #1276 +--- + utils/pdfunite.cc | 16 ++++++++++++++++ + 1 file changed, 16 insertions(+) + +diff --git a/utils/pdfunite.cc b/utils/pdfunite.cc +index a8116e3..9735096 100644 +--- a/utils/pdfunite.cc ++++ b/utils/pdfunite.cc +@@ -210,6 +210,14 @@ int main (int argc, char *argv[]) + Object ocObj; + if (docs.size() >= 1) { + Object catObj = docs[0]->getXRef()->getCatalog(); ++ if(!catObj.isDict()){ ++ fclose(f); ++ delete yRef; ++ delete countRef; ++ delete outStr; ++ error(errSyntaxError, -1, "XRef's Catalog is not a dictionary."); ++ return -1; ++ } + Dict *catDict = catObj.getDict(); + intents = catDict->lookup("OutputIntents"); + afObj = catDict->lookupNF("AcroForm").copy(); +@@ -310,6 +318,14 @@ int main (int argc, char *argv[]) + } + } + Object pageCatObj = docs[i]->getXRef()->getCatalog(); ++ if(!pageCatObj.isDict()){ ++ fclose(f); ++ delete yRef; ++ delete countRef; ++ delete outStr; ++ error(errSyntaxError, -1, "XRef's Catalog is not a dictionary."); ++ return -1; ++ } + Dict *pageCatDict = pageCatObj.getDict(); + Object pageNames = pageCatDict->lookup("Names"); + if (!pageNames.isNull() && pageNames.isDict()) { +-- +2.33.0 |