[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Re2: Crash when trying to load corrupt file with NSDictionary -initW
From: |
Roland Schwingel |
Subject: |
Re: Re2: Crash when trying to load corrupt file with NSDictionary -initWithContentsOfFile: |
Date: |
Thu, 30 Jun 2005 11:08:27 +0200 |
User-agent: |
Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.3) Gecko/20040910 |
Hi...
Richard Frith-Macdonald <richard@brainstorm.co.uk> wrote on 30.06.2005
10:34:27:
> > <roland.schwingel@onevision.de> wrote:>
> > Unfortunately it does not work and the reason is clear. With my
corrupt file
> > info->didUnique is set to 0 in initDeserializerInfo(), so the
GSIArray is
> > also not initialized and calling GSIArrayCount(&info->array) accesses
> > uninitialized data. Access to the GSIArray should only be done after
> > checking the didUnique flag.
>
> Thanks ... I missed that the array could be uninitialised. Should be
fixed
> now to check both that the array is initialised and that the index
into it
> is valid (and raise a different exception message in each case).
With one last small tweak it works now. I added a
break;
after the last else branch you added to terminate the ST_XREF case,
elsewise it would rush directly into the ST_CSTRING case which is
bad.
Thanks,
Roland
- Re: Re2: Crash when trying to load corrupt file with NSDictionary -initWithContentsOfFile:,
Roland Schwingel <=