Commit 4249a91b authored by Marcus Meissner's avatar Marcus Meissner Committed by Alexandre Julliard

Do not confuse the 0 fill magic of wsprintf with the "0x" hex prefix.

parent 0497aa64
...@@ -237,9 +237,8 @@ static UINT WPRINTF_GetLen( WPRINTF_FORMAT *format, WPRINTF_DATA *arg, ...@@ -237,9 +237,8 @@ static UINT WPRINTF_GetLen( WPRINTF_FORMAT *format, WPRINTF_DATA *arg,
break; break;
case WPR_HEXA: case WPR_HEXA:
len = sprintf( number, len = sprintf( number,
(format->flags & WPRINTF_UPPER_HEX) ? "%X" : "%x", (format->flags & WPRINTF_UPPER_HEX) ? "%X" : "%x",
(UINT)arg->int_view); (UINT)arg->int_view);
if (format->flags & WPRINTF_PREFIX_HEX) len += 2;
break; break;
default: default:
return 0; return 0;
...@@ -249,6 +248,7 @@ static UINT WPRINTF_GetLen( WPRINTF_FORMAT *format, WPRINTF_DATA *arg, ...@@ -249,6 +248,7 @@ static UINT WPRINTF_GetLen( WPRINTF_FORMAT *format, WPRINTF_DATA *arg,
if (format->precision > maxlen) format->precision = maxlen; if (format->precision > maxlen) format->precision = maxlen;
if ((format->flags & WPRINTF_ZEROPAD) && (format->width > format->precision)) if ((format->flags & WPRINTF_ZEROPAD) && (format->width > format->precision))
format->precision = format->width; format->precision = format->width;
if (format->flags & WPRINTF_PREFIX_HEX) len += 2;
return len; return len;
} }
...@@ -351,8 +351,6 @@ INT16 WINAPI wvsnprintf16( LPSTR buffer, UINT16 maxlen, LPCSTR spec, ...@@ -351,8 +351,6 @@ INT16 WINAPI wvsnprintf16( LPSTR buffer, UINT16 maxlen, LPCSTR spec,
*p++ = (format.flags & WPRINTF_UPPER_HEX) ? 'X' : 'x'; *p++ = (format.flags & WPRINTF_UPPER_HEX) ? 'X' : 'x';
maxlen -= 2; maxlen -= 2;
len -= 2; len -= 2;
format.precision -= 2;
format.width -= 2;
} }
/* fall through */ /* fall through */
case WPR_SIGNED: case WPR_SIGNED:
...@@ -428,8 +426,6 @@ INT WINAPI wvsnprintfA( LPSTR buffer, UINT maxlen, LPCSTR spec, ...@@ -428,8 +426,6 @@ INT WINAPI wvsnprintfA( LPSTR buffer, UINT maxlen, LPCSTR spec,
*p++ = (format.flags & WPRINTF_UPPER_HEX) ? 'X' : 'x'; *p++ = (format.flags & WPRINTF_UPPER_HEX) ? 'X' : 'x';
maxlen -= 2; maxlen -= 2;
len -= 2; len -= 2;
format.precision -= 2;
format.width -= 2;
} }
/* fall through */ /* fall through */
case WPR_SIGNED: case WPR_SIGNED:
...@@ -505,8 +501,6 @@ INT WINAPI wvsnprintfW( LPWSTR buffer, UINT maxlen, LPCWSTR spec, ...@@ -505,8 +501,6 @@ INT WINAPI wvsnprintfW( LPWSTR buffer, UINT maxlen, LPCWSTR spec,
*p++ = (format.flags & WPRINTF_UPPER_HEX) ? 'X' : 'x'; *p++ = (format.flags & WPRINTF_UPPER_HEX) ? 'X' : 'x';
maxlen -= 2; maxlen -= 2;
len -= 2; len -= 2;
format.precision -= 2;
format.width -= 2;
} }
/* fall through */ /* fall through */
case WPR_SIGNED: case WPR_SIGNED:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment