xserver: Branch 'xorg-server-1.4-apple'
George Peter Staplin
gstaplin at kemper.freedesktop.org
Thu Sep 25 13:18:39 PDT 2008
hw/xquartz/pbproxy/x-selection.m | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
New commits:
commit 6333d619e747c3b6bd3ba7557e35c0e5f6daa40f
Author: George Peter Staplin <gps at Georges-Workstation.local>
Date: Thu Sep 25 14:16:20 2008 -0600
XQuartz: pbproxy: Fix another STRING bug.
Fix the usage of the NSString cStringUsingEncoding: - it doesn't NUL
terminate the string, which lead to a bus error. So, we use
lengthOfBytesUsingEncoding: to get the length in bytes instead of
strlen().
diff --git a/hw/xquartz/pbproxy/x-selection.m b/hw/xquartz/pbproxy/x-selection.m
index 14f6967..b141db0 100644
--- a/hw/xquartz/pbproxy/x-selection.m
+++ b/hw/xquartz/pbproxy/x-selection.m
@@ -528,7 +528,7 @@ get_property(Window win, Atom property, struct propdata *pdata, Bool delete, Ato
pbtypes = [pb types];
if (pbtypes)
{
- long list[6];
+ long list[6]; /* Don't forget to increase this if we handle more types! */
long count = 0;
if ([pbtypes containsObject:NSStringPboardType])
@@ -619,7 +619,8 @@ get_property(Window win, Atom property, struct propdata *pdata, Bool delete, Ato
{
DB ("Latin-1\n");
bytes = [data cStringUsingEncoding:NSISOLatin1StringEncoding];
- length = strlen (bytes);
+ /*WARNING: bytes is not NUL-terminated. */
+ length = [data lengthOfBytesUsingEncoding:NSISOLatin1StringEncoding];
}
DB ("e->target %s\n", XGetAtomName (x_dpy, e->target));
@@ -760,7 +761,6 @@ get_property(Window win, Atom property, struct propdata *pdata, Bool delete, Ato
[self send_reply:&reply];
return;
}
- /*FIXME Why is [bmimage retainCount] 2 here? */
DB ("bmimage retainCount after initWithData %u\n", [bmimage retainCount]);
More information about the xorg-commit
mailing list