-clipboard crash with large amount of text
Harold L Hunt II
huntharo@msu.edu
Mon Oct 6 17:17:00 GMT 2003
Turns out that the function is returning XConverterNotFound. iCount is
somewhere around 32 million in this case, so its value is not valid.
Upon further investigation, I found out that xtpText.format was 32
instead of 8 (anything other than 8 causes Xutf8TextPropertyToTextList
to return XConvertorNotFound). I also found out that xtpText.encoding
didn't match any value that I had previously known about.
Going even further, I printed the atom name for xtpText.format and got
"INCR". Turns out that the ICCCM specifies a protocol for incremental
transfers of selection data when the data being transferred is very
large. This is documented in Section 2.7.2 of the ICCCM:
http://tronche.com/gui/x/icccm/sec-2.html#s-2.7.2
So, the crash here is sort of by design since we don't support INCR.
The two options we have are to fix the crash by silently ignoring INCR
requests, or we can strive to support INCR requests. I think we will
probably do the latter.
Harold
Harold L Hunt II wrote:
> The crash is in xc/programs/Xserver/hw/xwin/winclipboardxevents.c at
> line 565. The offending code is after a call to:
>
> /* Convert the text property to a text list */
> Xutf8TextPropertyToTextList (pDisplay,
> &xtpText,
> &ppszTextList,
> &iCount);
>
>
> ppszTextList is being returned as NULL, yet iCount is > 0. I have to go
> now, but maybe someone can look up reasons for why
> Xutf8TextPropertyToTextList would return a NULL pointer.
>
>
> Harold
>
More information about the Cygwin-xfree
mailing list