You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pdfbox.apache.org by Andreas Lehmkühler <an...@lehmi.de> on 2013/12/06 08:43:22 UTC
Re: svn commit: r1548387 -
/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
Hi,
> msahyoun@apache.org hat am 6. Dezember 2013 um 08:15 geschrieben:
>
>
> Author: msahyoun
> Date: Fri Dec 6 07:15:36 2013
> New Revision: 1548387
>
> URL: http://svn.apache.org/r1548387
> Log:
> Fix for infinite loop in parseCOSHexString [PDFBOX-1796]
>
> Modified:
>
> pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
>
> Modified:
> pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
> URL:
> http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java?rev=1548387&r1=1548386&r2=1548387&view=diff
> ==============================================================================
> ---
> pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
> (original)
> +++
> pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
> Fri Dec 6 07:15:36 2013
> @@ -1008,7 +1008,15 @@ public abstract class BaseParser
> do
> {
> c = pdfSource.read();
> - } while ( c != '>' );
> + } while ( c != '>' && c < 0 );
I guess there is a typo? It should be the following, shouldn't it?
} while ( c != '>' && c >= 0 );
> +
> + // might have reached EOF while looking for the closing
> bracket
> + // this can happen for malformed PDFs only. Make sure that
> there is
> + // no endless loop.
> + if ( c < 0 )
> + {
> + throw new IOException( "Missing closing bracket for hex
> string. Reached EOS." );
> + }
>
> // exit loop
> break;
BR
Andreas Lehmkühler
Re: svn commit: r1548387 -
/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
Posted by Andreas Lehmkühler <an...@lehmi.de>.
Hi Maruan,
> Maruan Sahyoun <sa...@fileaffairs.de> hat am 6. Dezember 2013 um 09:00
> geschrieben:
>
>
> Hi Andreas,
>
> committed in rev 1548394 might have been a network issue.
Thanks for fixing it that fast!
> Thanks for picking up my fault.
That's one of the advantages of the transparency within ASF projects. :-)
I hope that everybody is looking at my checkins as well so that my faults
will be found too in that early stage. :-)
> Maruan Sahyoun
BR
Andreas Lehmkühler
> Am 06.12.2013 um 08:58 schrieb Andreas Lehmkühler <an...@lehmi.de>:
>
> > Hi,
> >
> >> Maruan Sahyoun <sa...@fileaffairs.de> hat am 6. Dezember 2013 um 08:54
> >> geschrieben:
> >>
> >>
> >> Hi Andreas,
> >>
> >> of course it should - too early in the morning for me :-)
> >>
> >> Unfortunately it doesn't let me commit the fix - could you try?
> > Hmm, what's the problem , any svn issue?
> >
> > I can't commit it as I'm not a home.
> >
> >> Maruan Sahyoun
> >>
> >> Am 06.12.2013 um 08:43 schrieb Andreas Lehmkühler <an...@lehmi.de>:
> >>
> >>> Hi,
> >>>
> >>>> msahyoun@apache.org hat am 6. Dezember 2013 um 08:15 geschrieben:
> >>>>
> >>>>
> >>>> Author: msahyoun
> >>>> Date: Fri Dec 6 07:15:36 2013
> >>>> New Revision: 1548387
> >>>>
> >>>> URL: http://svn.apache.org/r1548387
> >>>> Log:
> >>>> Fix for infinite loop in parseCOSHexString [PDFBOX-1796]
> >>>>
> >>>> Modified:
> >>>>
> >>>>
> >>>> pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
> >>>>
> >>>> Modified:
> >>>> pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
> >>>> URL:
> >>>> http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java?rev=1548387&r1=1548386&r2=1548387&view=diff
> >>>> ==============================================================================
> >>>> ---
> >>>> pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
> >>>> (original)
> >>>> +++
> >>>> pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
> >>>> Fri Dec 6 07:15:36 2013
> >>>> @@ -1008,7 +1008,15 @@ public abstract class BaseParser
> >>>> do
> >>>> {
> >>>> c = pdfSource.read();
> >>>> - } while ( c != '>' );
> >>>> + } while ( c != '>' && c < 0 );
> >>> I guess there is a typo? It should be the following, shouldn't it?
> >>>
> >>> } while ( c != '>' && c >= 0 );
> >>>
> >>>> +
> >>>> + // might have reached EOF while looking for the closing
> >>>> bracket
> >>>> + // this can happen for malformed PDFs only. Make sure
> >>>> that
> >>>> there is
> >>>> + // no endless loop.
> >>>> + if ( c < 0 )
> >>>> + {
> >>>> + throw new IOException( "Missing closing bracket for
> >>>> hex
> >>>> string. Reached EOS." );
> >>>> + }
> >>>>
> >>>> // exit loop
> >>>> break;
> >>>
> >>>
> >>> BR
> >>> Andreas Lehmkühler
> >>
> >
> > BR
> > Andreas Lehmkühler
>
Re: svn commit: r1548387 - /pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
Posted by Maruan Sahyoun <sa...@fileaffairs.de>.
Hi Andreas,
committed in rev 1548394 might have been a network issue. Thanks for picking up my fault.
Maruan Sahyoun
Am 06.12.2013 um 08:58 schrieb Andreas Lehmkühler <an...@lehmi.de>:
> Hi,
>
>> Maruan Sahyoun <sa...@fileaffairs.de> hat am 6. Dezember 2013 um 08:54
>> geschrieben:
>>
>>
>> Hi Andreas,
>>
>> of course it should - too early in the morning for me :-)
>>
>> Unfortunately it doesn't let me commit the fix - could you try?
> Hmm, what's the problem , any svn issue?
>
> I can't commit it as I'm not a home.
>
>> Maruan Sahyoun
>>
>> Am 06.12.2013 um 08:43 schrieb Andreas Lehmkühler <an...@lehmi.de>:
>>
>>> Hi,
>>>
>>>> msahyoun@apache.org hat am 6. Dezember 2013 um 08:15 geschrieben:
>>>>
>>>>
>>>> Author: msahyoun
>>>> Date: Fri Dec 6 07:15:36 2013
>>>> New Revision: 1548387
>>>>
>>>> URL: http://svn.apache.org/r1548387
>>>> Log:
>>>> Fix for infinite loop in parseCOSHexString [PDFBOX-1796]
>>>>
>>>> Modified:
>>>>
>>>>
>>>> pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
>>>>
>>>> Modified:
>>>> pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
>>>> URL:
>>>> http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java?rev=1548387&r1=1548386&r2=1548387&view=diff
>>>> ==============================================================================
>>>> ---
>>>> pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
>>>> (original)
>>>> +++
>>>> pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
>>>> Fri Dec 6 07:15:36 2013
>>>> @@ -1008,7 +1008,15 @@ public abstract class BaseParser
>>>> do
>>>> {
>>>> c = pdfSource.read();
>>>> - } while ( c != '>' );
>>>> + } while ( c != '>' && c < 0 );
>>> I guess there is a typo? It should be the following, shouldn't it?
>>>
>>> } while ( c != '>' && c >= 0 );
>>>
>>>> +
>>>> + // might have reached EOF while looking for the closing
>>>> bracket
>>>> + // this can happen for malformed PDFs only. Make sure that
>>>> there is
>>>> + // no endless loop.
>>>> + if ( c < 0 )
>>>> + {
>>>> + throw new IOException( "Missing closing bracket for
>>>> hex
>>>> string. Reached EOS." );
>>>> + }
>>>>
>>>> // exit loop
>>>> break;
>>>
>>>
>>> BR
>>> Andreas Lehmkühler
>>
>
> BR
> Andreas Lehmkühler
Re: svn commit: r1548387 -
/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
Posted by Andreas Lehmkühler <an...@lehmi.de>.
Hi,
> Maruan Sahyoun <sa...@fileaffairs.de> hat am 6. Dezember 2013 um 08:54
> geschrieben:
>
>
> Hi Andreas,
>
> of course it should - too early in the morning for me :-)
>
> Unfortunately it doesn't let me commit the fix - could you try?
Hmm, what's the problem , any svn issue?
I can't commit it as I'm not a home.
> Maruan Sahyoun
>
> Am 06.12.2013 um 08:43 schrieb Andreas Lehmkühler <an...@lehmi.de>:
>
> > Hi,
> >
> >> msahyoun@apache.org hat am 6. Dezember 2013 um 08:15 geschrieben:
> >>
> >>
> >> Author: msahyoun
> >> Date: Fri Dec 6 07:15:36 2013
> >> New Revision: 1548387
> >>
> >> URL: http://svn.apache.org/r1548387
> >> Log:
> >> Fix for infinite loop in parseCOSHexString [PDFBOX-1796]
> >>
> >> Modified:
> >>
> >>
> >>pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
> >>
> >> Modified:
> >> pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
> >> URL:
> >> http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java?rev=1548387&r1=1548386&r2=1548387&view=diff
> >> ==============================================================================
> >> ---
> >> pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
> >> (original)
> >> +++
> >> pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
> >> Fri Dec 6 07:15:36 2013
> >> @@ -1008,7 +1008,15 @@ public abstract class BaseParser
> >> do
> >> {
> >> c = pdfSource.read();
> >> - } while ( c != '>' );
> >> + } while ( c != '>' && c < 0 );
> > I guess there is a typo? It should be the following, shouldn't it?
> >
> > } while ( c != '>' && c >= 0 );
> >
> >> +
> >> + // might have reached EOF while looking for the closing
> >> bracket
> >> + // this can happen for malformed PDFs only. Make sure that
> >> there is
> >> + // no endless loop.
> >> + if ( c < 0 )
> >> + {
> >> + throw new IOException( "Missing closing bracket for
> >> hex
> >> string. Reached EOS." );
> >> + }
> >>
> >> // exit loop
> >> break;
> >
> >
> > BR
> > Andreas Lehmkühler
>
BR
Andreas Lehmkühler
Re: svn commit: r1548387 - /pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
Posted by Maruan Sahyoun <sa...@fileaffairs.de>.
Hi Andreas,
of course it should - too early in the morning for me :-)
Unfortunately it doesn't let me commit the fix - could you try?
Maruan Sahyoun
Am 06.12.2013 um 08:43 schrieb Andreas Lehmkühler <an...@lehmi.de>:
> Hi,
>
>> msahyoun@apache.org hat am 6. Dezember 2013 um 08:15 geschrieben:
>>
>>
>> Author: msahyoun
>> Date: Fri Dec 6 07:15:36 2013
>> New Revision: 1548387
>>
>> URL: http://svn.apache.org/r1548387
>> Log:
>> Fix for infinite loop in parseCOSHexString [PDFBOX-1796]
>>
>> Modified:
>>
>> pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
>>
>> Modified:
>> pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
>> URL:
>> http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java?rev=1548387&r1=1548386&r2=1548387&view=diff
>> ==============================================================================
>> ---
>> pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
>> (original)
>> +++
>> pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/BaseParser.java
>> Fri Dec 6 07:15:36 2013
>> @@ -1008,7 +1008,15 @@ public abstract class BaseParser
>> do
>> {
>> c = pdfSource.read();
>> - } while ( c != '>' );
>> + } while ( c != '>' && c < 0 );
> I guess there is a typo? It should be the following, shouldn't it?
>
> } while ( c != '>' && c >= 0 );
>
>> +
>> + // might have reached EOF while looking for the closing
>> bracket
>> + // this can happen for malformed PDFs only. Make sure that
>> there is
>> + // no endless loop.
>> + if ( c < 0 )
>> + {
>> + throw new IOException( "Missing closing bracket for hex
>> string. Reached EOS." );
>> + }
>>
>> // exit loop
>> break;
>
>
> BR
> Andreas Lehmkühler