Hi, Thanks for the testcases.
I fixed the bug/crash inside of the predictor. The fix is in SVN, could you
please check if this fixes your issues?
I can reproduce your problems in msft080305vxpm1.pdf and will come back to you
as soon as I know what causes this problems.
Regarding your issue with names. I can reproduce this two. Will come back as
soon as I know the fix.
best regards,
Dom
Am Freitag, 26. September 2008 schrieb Shunli (Derek) Zheng:
> See my comments. Thanks!
>
> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
> Sent: Friday, September 26, 2008 6:06 PM
> To: [email protected]
> Cc: Shunli (Derek) Zheng
> Subject: Re: [Podofo-users] PoDoFo bug reports
>
> Hi,
>
> Thanks for reporting these bugs.
>
> Am Freitag, 26. September 2008 schrieb Shunli (Derek) Zheng:
> > Hi PoDoFo supporters,
> >
> > Thanks for all your contribution to the PoDoFo project. It's a very
> > good and useful open source project.
> >
> > Our company has a project that should add custom attributes to PDF
> > file's Info dictionary. And we found some critical bugs of PoDoFo when
> >
> > doing test on it.
> > 1. There is a crash bug in function PdfPredictorDecoder::Decode() of
> > file PdfFiltersPrivate.cpp. You can test with pdf files that are
> > converted from .bmp or .jpg by Adobe Acrobat.
> > if( m_nCurRowIndex > m_nRows )
> > {
> > m_nCurRowIndex = 0;
> > m_nCurPredictor = m_nPredictor >= 10 ? *pBuffer + 10 :
> > *pBuffer;
> > }
> > else
> > {
> > ...
> > case 12: // png up
> > m_pPrev[m_nCurRowIndex] += *pBuffer; // Here
> > m_nCurRowIndex may equal to m_nRows, and beyond the array boundary.
> > pStream->Write( &m_pPrev[m_nCurRowIndex], 1 );
> > ...
> > }
>
> Could you send me an example file for this problem? I think this bug
> could be the solution to a bug David Roach is encountering. I will try
> to fix it as soon as I can reproduce it.
>
> [Derek] Attached(bmp.pdf)
>
> > 2. PoDoFo will failed to parse pdf file if there are some syntax error
> >
> > in any dictionay.
> > For example, for the following data, there is string in ( ), and
> > the string contains two '('. PoDoFo will not parse the string
> > correctly until EOF of the file.
> > There are no bad syntax tolerance codes in the library. I think
> > the bugs should be fixed.
> > "... << ... /Title (....(..(hello world....) >> endobj ... "
>
> Well, you are right. PoDoFo currently accepts only valid PDF files. Only
> balanced brackets are allowed to be not escaped in PDF, so your file is
> broken.
>
> I currently have no time to add a fault-tollerant parser to PoDoFo, but
> I will of course accept code contributions. I think so that the fault
> tollerant parser should be optional. So that PoDoFo has to parsers (or a
> property on
> PdfParser) to specify that either only valid PDFs are accepted or that
> PoDoFo should be more fault tollerant.
>
> [Derek] I'm sorry to say that the pdf file is created by PoDoFo file. We
> add some custom attributes in msft080305vxpm1.pdf, and then new
> generated pdf file will contain these bad syntax data.
>
> > 3. If I open a pdf file (converted from .vsd file type) with PoDoFo,
> > and add some custom attributes into Info dictionary, and write the
> > whole back to a new pdf file.
> > Then the new generated file will generate many new dictionaries,
> > such as below data. And later if I add new custom attributes to the
> > new generated pdf file,
> > PoDoFo will parse the below data failed with "Invalid data type"
> > error message. (# is not a delimiter)
> > "100 0 obj << /C /# # # # # # # # ... /K ... >> endobj"
>
> Quoting from the PDF Reference section 3.2.4 Name Objects:
> "The name may include any regular characters, but not delimiter or
> white-space characters (see Section 3.1, "Lexical Conventions")."
>
> So I think "/# # # #" is no legal name because of the whitespaces. So
> how do these get in their? Does PoDoFo write them? Do we have an
> encoding problem in PdfName?
>
> [Derek] I'm sorry to say that the pdf file is created by PoDoFo file. We
> add some custom attributes in encryption_vsd.pdf, and then new generated
> pdf file will contain these bad syntax data. White-space is actually
> 0x00 data.
>
> > 4. PoDoFo failed to parse PDF Portfolio file type with error message:
> > No trailer was found in the PDF file.
>
> I'll try to look into this.
>
> best regards,
> Dom
>
> > We will be appreciate if your team can fix these bugs in the new
> > verson of PoDoFo code. Thanks very much!
> >
> > Regards,
> >
> > -Derek
> >
> > - --------------------------------------------------------------------
> > STATEMENT OF CONFIDENTIALITY
> >
> > The information contained in this electronic message and any
> > attachments to this message are intended for the exclusive use of the
> > addressee(s) and may contain confidential or privileged information.
> > No representation is made on its accuracy or completeness of the
> > information contained in this electronic message. Certain assumptions
> > may have been made in the preparation of this material as at this
> > date, and are subject to change without notice. If you are not the
> > intended recipient, you are hereby notified that any dissemination,
> > distribution or copying of this e-mail and any attachment(s) is
> > strictly prohibited. Please reply to the sender at NextLabs Inc and
> > destroy all copies of this message and any attachments from your
>
> system.
>
> > ======================================================================
>
> --
> **********************************************************************
> Dominik Seichter - [EMAIL PROTECTED]
> KRename - http://www.krename.net - Powerful batch renamer for KDE
> KBarcode - http://www.kbarcode.net - Barcode and label printing PoDoFo -
> http://podofo.sf.net - PDF generation and parsing library SchafKopf -
> http://schafkopf.berlios.de - Schafkopf, a card game, for KDE Alan -
> http://alan.sf.net - A Turing Machine in Java
> **********************************************************************
>
> - --------------------------------------------------------------------
> STATEMENT OF CONFIDENTIALITY
>
> The information contained in this electronic message and any attachments to
> this message are intended for the exclusive use of the addressee(s) and may
> contain confidential or privileged information. No representation is made
> on its accuracy or completeness of the information contained in this
> electronic message. Certain assumptions may have been made in the
> preparation of this material as at this date, and are subject to change
> without notice. If you are not the intended recipient, you are hereby
> notified that any dissemination, distribution or copying of this e-mail and
> any attachment(s) is strictly prohibited. Please reply to the sender at
> NextLabs Inc and destroy all copies of this message and any attachments
> from your system.
> ======================================================================
--
**********************************************************************
Dominik Seichter - [EMAIL PROTECTED]
KRename - http://www.krename.net - Powerful batch renamer for KDE
KBarcode - http://www.kbarcode.net - Barcode and label printing
PoDoFo - http://podofo.sf.net - PDF generation and parsing library
SchafKopf - http://schafkopf.berlios.de - Schafkopf, a card game, for KDE
Alan - http://alan.sf.net - A Turing Machine in Java
**********************************************************************
signature.asc
Description: This is a digitally signed message part.
------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________ Podofo-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/podofo-users
