ofz-11248: Use-of-uninitialized-value in Parser::makeStream
diff --git a/poppler/Hints.cc b/poppler/Hints.cc
index aeb7542..05d2f74 100644
--- a/poppler/Hints.cc
+++ b/poppler/Hints.cc
@@ -138,10 +138,12 @@
     nPages = 0;
   }
 
-  memset(pageLength, 0, nPages * sizeof(unsigned int));
-  memset(pageOffset, 0, nPages * sizeof(unsigned int));
-  memset(numSharedObject, 0, nPages * sizeof(unsigned int));
-  memset(pageObjectNum, 0, nPages * sizeof(int));
+  if (nPages != 0) {
+    memset(pageLength, 0, nPages * sizeof(unsigned int));
+    memset(pageOffset, 0, nPages * sizeof(unsigned int));
+    memset(numSharedObject, 0, nPages * sizeof(unsigned int));
+    memset(pageObjectNum, 0, nPages * sizeof(int));
+  }
 
   groupLength = nullptr;
   groupOffset = nullptr;
diff --git a/poppler/XRef.cc b/poppler/XRef.cc
index 68f92d0..87a08c7 100644
--- a/poppler/XRef.cc
+++ b/poppler/XRef.cc
@@ -27,6 +27,7 @@
 // Copyright (C) 2016 Jakub Alba <jakubalba@gmail.com>
 // Copyright (C) 2018, 2019 Adam Reichold <adam.reichold@t-online.de>
 // Copyright (C) 2018 Tobias Deiminger <haxtibal@posteo.de>
+// Copyright (C) 2019 LE GARREC Vincent <legarrec.vincent@gmail.com>
 //
 // To see a description of the changes please see the Changelog file that
 // came with your tarball or type make ChangeLog if you are building from git
@@ -1576,7 +1577,8 @@
       }
 
       if (!parseEntry(mainXRefEntriesOffset + 20*i, &entries[i])) {
-        error(errSyntaxError, -1, "Failed to parse XRef entry [{0:d}].", i);
+	error(errSyntaxError, -1, "Failed to parse XRef entry [{0:d}].", i);
+	return &dummyXRefEntry;
       }
     } else {
       // Read XRef tables until the entry we're looking for is found