You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@xerces.apache.org by "Axel Weiss (JIRA)" <xe...@xml.apache.org> on 2005/05/30 23:56:55 UTC

[jira] Updated: (XERCESC-1428) new iconv-transcoder algorithm

     [ http://issues.apache.org/jira/browse/XERCESC-1428?page=all ]

Axel Weiss updated XERCESC-1428:
--------------------------------

    Attachment: transcoder-179120.diff

> new iconv-transcoder algorithm
> ------------------------------
>
>          Key: XERCESC-1428
>          URL: http://issues.apache.org/jira/browse/XERCESC-1428
>      Project: Xerces-C++
>         Type: Improvement
>   Components: Utilities
>  Environment: linux
>     Reporter: Axel Weiss
>     Priority: Minor
>  Attachments: transcoder-179120.diff
>
> James Berry wrote:
> > What if you make this initial buffer a static buffer? And allocate  
> > the exact size needed at the end?
> > That keeps the memory cost constant, at the expense of a guaranteed  
> > extra string copy.
> >
> > For cases where you exceed the static buffer size, continue to do  
> > your size-doubling on overflow; for the cases where you exceed the  
> > static buffer size, you'll continue to use excess memory.
> >
> > I think this tradeoff would be worth it...
> Ok, it now starts with a local buffer on the stack and creates a copy with the exact size needed, if this buffer was not exceeded. Otherwise, an always doubling buffer enlargement is performed, resulting in returning an excess buffer for the result.
> The patch is against 3.0-unstable-179120.
>                  Axel

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org