webservices: allocate enough memory for WS_XML_TEXT_TYPE_DOUBLE (Valgrind)

Hans Leidekker hans at codeweavers.com
Tue Dec 13 02:24:14 CST 2016


On Mon, 2016-12-12 at 16:20 -0600, Austin English wrote:
> This avoids a stack smashing error when running
> dlls/webservices/tests/writer.c under Valgrind.
>
> diff --git a/dlls/webservices/writer.c b/dlls/webservices/writer.c
> index c1f1b0c..07b32d8 100644
> --- a/dlls/webservices/writer.c
> +++ b/dlls/webservices/writer.c
> @@ -1369,7 +1369,7 @@ static HRESULT text_to_utf8text( const WS_XML_TEXT *text, WS_XML_UTF8_TEXT **ret
>      case WS_XML_TEXT_TYPE_DOUBLE:
>      {
>          const WS_XML_DOUBLE_TEXT *double_text = (const WS_XML_DOUBLE_TEXT *)text;
> -        unsigned char buf[24]; /* "-1.1111111111111111E-308" */
> +        unsigned char buf[48]; /* "-1.1111111111111111E-308" */
>          unsigned short fpword;
>          ULONG len;

Please add a comment with motivation for the increased buffer size.





More information about the wine-devel mailing list