Hi
I'm hitting an exception with podofo-0.9.5 with the following code:
---
#include <podofo/base/PdfDictionary.h>
#include <podofo/doc/PdfImage.h>
#include <podofo/doc/PdfStreamedDocument.h>
int main() {
PoDoFo::PdfStreamedDocument* document = new
PoDoFo::PdfStreamedDocument("test.pdf");
PoDoFo::PdfImage pdfImage(document);
PoDoFo::PdfDictionary& dictionary =
pdfImage.GetObject()->GetDictionary();
return 0;
}
---
This results in an exception in PoDoFo::PdfVariant::DelayedLoadImpl
│911 void PdfVariant::DelayedLoadImpl()
│912 {
│913 // Default implementation of virtual void
DelayedLoadImpl() throws, since delayed
│914 // loading should not be enabled except by types that
support it.
>│915 PODOFO_RAISE_ERROR( ePdfError_InternalLogic );
│916 }
Valgrind reports:
==16529== Conditional jump or move depends on uninitialised value(s)
==16529== at 0x400BFF: PoDoFo::PdfVariant::DelayedLoad() const
(PdfVariant.h:545)
==16529== by 0x400C3B: PoDoFo::PdfVariant::GetDictionary()
(PdfVariant.h:851)
==16529== by 0x400B84: main (test.cpp:8)
It appears that m_bDelayedLoadDone is uninitialized and, if unlucky,
results in this behaviour.
Hunting for a fix / workaround.
Best
Sandro
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Podofo-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/podofo-users