Avoid warnings about mismatched format string in wxMSW wxClipboard code.

Cast the string offsets to "unsigned" explicitly, even though they can be 64
bit (whereas unsigned is 32 bits) under Win64, the strings we operate with
here shouldn't be more than 4GiB long.

See #13815.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70440 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2012-01-23 11:28:01 +00:00
parent eff97cba04
commit fbf9fe29f9

View File

@@ -332,19 +332,19 @@ bool wxSetClipboardData(wxDataFormat dataFormat,
// string when you overwrite it so you follow up with code to replace // string when you overwrite it so you follow up with code to replace
// the 0 appended at the end with a '\r'... // the 0 appended at the end with a '\r'...
char *ptr = strstr(buf, "StartHTML"); char *ptr = strstr(buf, "StartHTML");
sprintf(ptr+10, "%08u", strstr(buf, "<html>") - buf); sprintf(ptr+10, "%08u", (unsigned)(strstr(buf, "<html>") - buf));
*(ptr+10+8) = '\r'; *(ptr+10+8) = '\r';
ptr = strstr(buf, "EndHTML"); ptr = strstr(buf, "EndHTML");
sprintf(ptr+8, "%08u", strlen(buf)); sprintf(ptr+8, "%08u", (unsigned)strlen(buf));
*(ptr+8+8) = '\r'; *(ptr+8+8) = '\r';
ptr = strstr(buf, "StartFragment"); ptr = strstr(buf, "StartFragment");
sprintf(ptr+14, "%08u", strstr(buf, "<!--StartFrag") - buf); sprintf(ptr+14, "%08u", (unsigned)(strstr(buf, "<!--StartFrag") - buf));
*(ptr+14+8) = '\r'; *(ptr+14+8) = '\r';
ptr = strstr(buf, "EndFragment"); ptr = strstr(buf, "EndFragment");
sprintf(ptr+12, "%08u", strstr(buf, "<!--EndFrag") - buf); sprintf(ptr+12, "%08u", (unsigned)(strstr(buf, "<!--EndFrag") - buf));
*(ptr+12+8) = '\r'; *(ptr+12+8) = '\r';
// Now you have everything in place ready to put on the // Now you have everything in place ready to put on the