[Expat-discuss] characterData

Gert Cuykens gert.cuykens at gmail.com
Sat Jul 21 05:30:17 CEST 2007


On 7/21/07, Nick MacDonald <nickmacd at gmail.com> wrote:
> Since you are NOT guaranteed to get only ONE CharacterData handler
> call, you should really be writing:
>
> static void
> characterData(void *userData, const XML_Char *s, int l)
> {
>   PAGE *page = (PAGE *)userData;
>   if (NULL == page->data)
>   {
>     char *data=malloc(l);
>     memcpy(data,s,l);
>     page->data=data;
>     page->dataSize=l;  /* a new structure member */
>   }
>   else
>   {
>     char *data=realloc(data, l+page->dataSize);
>     memcpy(data+page->dataSize,s,l);
>     page->data=data;
>     page->dataSize+=l;
>   }
> }
>

Thanks :)


More information about the Expat-discuss mailing list