www.delorie.com/archives/browse.cgi | search |
X-Recipient: | archive-cygwin AT delorie DOT com |
X-Original-To: | cygwin AT cygwin DOT com |
Delivered-To: | cygwin AT cygwin DOT com |
DMARC-Filter: | OpenDMARC Filter v1.4.1 sourceware.org 08A1F3857BBC |
Authentication-Results: | sourceware.org; |
dmarc=fail (p=none dis=none) header.from=nifty.ne.jp | |
Authentication-Results: | sourceware.org; spf=fail smtp.mailfrom=nifty.ne.jp |
DKIM-Filter: | OpenDKIM Filter v2.10.3 conssluserg-05.nifty.com 2623Kt7N028760 |
DKIM-Signature: | v=1; a=rsa-sha256; c=relaxed/relaxed; d=nifty.ne.jp; |
s=dec2015msa; t=1656732055; | |
bh=xsCzN4augBbtbQ8DXPiWWm7KlKhNL1VqYRtr3ve70sk=; | |
h=Date:From:To:Subject:From; | |
b=PmnCBBJ0voNEZCHAHrtidhCUjgBBZLdXNTAinVgI1CQOILfCzPknBFJqMOkwbeBzJ | |
YeMaz2ywsipxqOtMNZBqFUf1JwPxNIpE0mnAgv+Pnc0Gci4aRvJIcW81dVFpxVc8jn | |
c7meh4/bwpaLCzuohmf8XlHnDd+3A00ZgxD5+uZibYGGs8qTY1ew9hmzJX9ifB5sjm | |
HoPdogdQY2jE8ulteSOa6/vBoYm4B42tMEbyFa1X0zlH9Wu59KoBLj6jfb4rBz8uew | |
uNrXgXOatf05eozg2jClX+zvyktNgR7dHrRL7lN504uHBe7G88kZdvCtTB8RAvIhgZ | |
fif863OiFtjBQ== | |
X-Nifty-SrcIP: | [119.150.44.95] |
Date: | Sat, 2 Jul 2022 12:20:56 +0900 |
From: | Takashi Yano <takashi DOT yano AT nifty DOT ne DOT jp> |
To: | cygwin AT cygwin DOT com |
Subject: | /dev/clipboard sometimes fails to set CF_UNICODETEXT data. |
Message-Id: | <20220702122056.39a6c5e49c637d028694412e@nifty.ne.jp> |
X-Mailer: | Sylpheed 3.7.0 (GTK+ 2.24.30; i686-pc-mingw32) |
Mime-Version: | 1.0 |
X-Spam-Status: | No, score=-4.6 required=5.0 tests=BAYES_00, DKIM_SIGNED, |
DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, | |
SPF_PASS, TXREP, | |
T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 | |
X-Spam-Checker-Version: | SpamAssassin 3.4.6 (2021-04-09) on |
server2.sourceware.org | |
X-BeenThere: | cygwin AT cygwin DOT com |
X-Mailman-Version: | 2.1.29 |
List-Id: | General Cygwin discussions and problem reports <cygwin.cygwin.com> |
List-Archive: | <https://cygwin.com/pipermail/cygwin/> |
List-Post: | <mailto:cygwin AT cygwin DOT com> |
List-Help: | <mailto:cygwin-request AT cygwin DOT com?subject=help> |
List-Subscribe: | <https://cygwin.com/mailman/listinfo/cygwin>, |
<mailto:cygwin-request AT cygwin DOT com?subject=subscribe> | |
Sender: | "Cygwin" <cygwin-bounces+archive-cygwin=delorie DOT com AT cygwin DOT com> |
This is a multi-part message in MIME format. --Multipart=_Sat__2_Jul_2022_12_20_56_+0900_=T0iwyttcDWjFtWL Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Hello, In one of my PCs, dd if=/dev/urandom count=10 | xxd > /dev/clipboard sometimes fails to set CF_UNICODETEXT data. As a result, pasting clipboard to notepad does not work. Even in the case, cygnativeformat data is set correctly. So, "cat /dev/clipboard" works. This problem depends on machine very much. My one PC with Xeon E3-1281 v3 CPU has a high probability of failure, however, another machine with Core i7-6700K CPU does not. I looked into this problem, and found OpenClipboard() for CF_UNICODETEXT fails. It seems that OpenClipboard() just after CloseClipboard() has high probability of failure. You can see the following test case immediately stops with error. Even with Core i7-6700K CPU machine above, the test case fails. #include <windows.h> #include <stdio.h> int main() { for (;;) { if (!OpenClipboard(0)) { printf("Open error.\n"); break; } if (!EmptyClipboard()) { printf("Empty error.\n"); break; } if (!CloseClipboard()) { printf("Cloes error.\n"); break; } } return 0; } I also found the patch attached solves the issue. I would appreciate any suggestion. -- Takashi Yano <takashi DOT yano AT nifty DOT ne DOT jp> --Multipart=_Sat__2_Jul_2022_12_20_56_+0900_=T0iwyttcDWjFtWL Content-Type: application/octet-stream; name="0001-Cygwin-clipboard-Add-workaround-for-setting-clipboar.patch" Content-Disposition: attachment; filename="0001-Cygwin-clipboard-Add-workaround-for-setting-clipboar.patch" Content-Transfer-Encoding: base64 RnJvbSBjMzMzOGVjMWE0ZmZmOTYwMjJjOTk2NzFjNzNlZTk4NDE4NzFmNmU4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBUYWthc2hpIFlhbm8gPHRha2FzaGkueWFub0BuaWZ0eS5uZS5q cD4KRGF0ZTogU2F0LCAyIEp1bCAyMDIyIDEyOjA4OjUxICswOTAwClN1YmplY3Q6IFtQQVRDSF0g Q3lnd2luOiBjbGlwYm9hcmQ6IEFkZCB3b3JrYXJvdW5kIGZvciBzZXR0aW5nIGNsaXBib2FyZAog ZmFpbHVyZS4KCi0gT3BlbkNsaXBib2FyZCgpIGp1c3QgYWZ0ZXIgQ2xvc2VDbGlwYm9hcmQoKSBo YXMgYSBoaWdoIHByb2JhYm9saXR5CiAgb2YgZmFpbHVyZS4gRHVlIHRvIHRoaXMsIC9kZXYvY2xp cGJvYXJkIHNvbWV0aW1lcyBmYWlscyB0byBzZXQKICBDRl9VTklDT0RFVEVYVCBkYXRhLiBUaGlz IHBhdGNoIGFkZCBhIHdvcmthcm91bmQgZm9yIHRoaXMgaXNzdWUuCi0tLQogd2luc3VwL2N5Z3dp bi9maGFuZGxlcl9jbGlwYm9hcmQuY2MgfCAyMiArKysrKysrKysrKysrKysrKy0tLS0tCiAxIGZp bGUgY2hhbmdlZCwgMTcgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS93aW5zdXAvY3lnd2luL2ZoYW5kbGVyX2NsaXBib2FyZC5jYyBiL3dpbnN1cC9jeWd3aW4vZmhh bmRsZXJfY2xpcGJvYXJkLmNjCmluZGV4IDA1ZjU0ZmZiMy4uYjBjZGY0ODVlIDEwMDY0NAotLS0g YS93aW5zdXAvY3lnd2luL2ZoYW5kbGVyX2NsaXBib2FyZC5jYworKysgYi93aW5zdXAvY3lnd2lu L2ZoYW5kbGVyX2NsaXBib2FyZC5jYwpAQCAtMTksNiArMTksMTggQEAgZGV0YWlscy4gKi8KICNp bmNsdWRlICJjaGlsZF9pbmZvLmgiCiAjaW5jbHVkZSA8c3lzL2NsaXBib2FyZC5oPgogCisvKiBP cGVuaW5nIGNsaXBib2FyZCBpbW1lZGlhdGVseSBhZnRlciBDbG9zZUNsaXBib2FyZCgpIGhhcwor ICAgaGlnaCBwcm9iYWJpbGl0eSBvZiBmYWlsdXJlLiBUaGVyZWZvcmUgdXNlIHJldHJ5LWxvb3Au ICovCitzdGF0aWMgaW5saW5lIGJvb2wKK29wZW5fY2xpcGJvYXJkICgpCit7CisgIGNvbnN0IGlu dCBtYXhfcmV0cnkgPSAxMDsKKyAgZm9yIChpbnQgaSA9IDA7IGkgPCBtYXhfcmV0cnk7IGkrKykK KyAgICBpZiAoT3BlbkNsaXBib2FyZCAoTlVMTCkpCisgICAgICByZXR1cm4gdHJ1ZTsKKyAgcmV0 dXJuIGZhbHNlOworfQorCiAvKgogICogUm9iZXJ0IENvbGxpbnM6CiAgKiBGSVhNRTogc2hvdWxk IHdlIHVzZSBHZXRDbGlwYm9hcmRTZXF1ZW5jZU51bWJlciB0byB0ZWxsIGlmIHRoZSBjbGlwYm9h cmQgaGFzCkBAIC0yOSw3ICs0MSw3IEBAIGZoYW5kbGVyX2Rldl9jbGlwYm9hcmQ6OmZoYW5kbGVy X2Rldl9jbGlwYm9hcmQgKCkKICAgOiBmaGFuZGxlcl9iYXNlICgpLCBwb3MgKDApLCBtZW1idWZm ZXIgKE5VTEwpLCBtc2l6ZSAoMCkKIHsKICAgLyogRklYTUU6IGNoZWNrIGZvciBlcnJvcnMgYW5k IGxvb3AgdW50aWwgd2UgY2FuIG9wZW4gdGhlIGNsaXBib2FyZCAqLwotICBPcGVuQ2xpcGJvYXJk IChOVUxMKTsKKyAgb3Blbl9jbGlwYm9hcmQgKCk7CiAgIGN5Z25hdGl2ZWZvcm1hdCA9IFJlZ2lz dGVyQ2xpcGJvYXJkRm9ybWF0VyAoQ1lHV0lOX05BVElWRSk7CiAgIENsb3NlQ2xpcGJvYXJkICgp OwogfQpAQCAtNTMsNyArNjUsNyBAQCBmaGFuZGxlcl9kZXZfY2xpcGJvYXJkOjpzZXRfY2xpcGJv YXJkIChjb25zdCB2b2lkICpidWYsIHNpemVfdCBsZW4pCiB7CiAgIEhHTE9CQUwgaG1lbTsKICAg LyogTmF0aXZlIENZR1dJTiBmb3JtYXQgKi8KLSAgaWYgKE9wZW5DbGlwYm9hcmQgKE5VTEwpKQor ICBpZiAob3Blbl9jbGlwYm9hcmQgKCkpCiAgICAgewogICAgICAgY3lnY2JfdCAqY2xpcGJ1ZjsK IApAQCAtOTksNyArMTExLDcgQEAgZmhhbmRsZXJfZGV2X2NsaXBib2FyZDo6c2V0X2NsaXBib2Fy ZCAoY29uc3Qgdm9pZCAqYnVmLCBzaXplX3QgbGVuKQogICAgICAgc2V0X2Vycm5vIChFSUxTRVEp OwogICAgICAgcmV0dXJuIC0xOwogICAgIH0KLSAgaWYgKE9wZW5DbGlwYm9hcmQgKE5VTEwpKQor ICBpZiAob3Blbl9jbGlwYm9hcmQgKCkpCiAgICAgewogICAgICAgUFdDSEFSIGNsaXBidWY7CiAK QEAgLTE2OCw3ICsxODAsNyBAQCBmaGFuZGxlcl9kZXZfY2xpcGJvYXJkOjpmc3RhdCAoc3RydWN0 IHN0YXQgKmJ1ZikKICAgYnVmLT5zdF9jdGltLnR2X25zZWMgPSAwTDsKICAgYnVmLT5zdF9iaXJ0 aHRpbSA9IGJ1Zi0+c3RfYXRpbSA9IGJ1Zi0+c3RfbXRpbSA9IGJ1Zi0+c3RfY3RpbTsKIAotICBp ZiAoT3BlbkNsaXBib2FyZCAoTlVMTCkpCisgIGlmIChvcGVuX2NsaXBib2FyZCAoKSkKICAgICB7 CiAgICAgICBVSU5UIGZvcm1hdGxpc3RbMV0gPSB7IGN5Z25hdGl2ZWZvcm1hdCB9OwogICAgICAg aW50IGZvcm1hdDsKQEAgLTIwNyw3ICsyMTksNyBAQCBmaGFuZGxlcl9kZXZfY2xpcGJvYXJkOjpy ZWFkICh2b2lkICpwdHIsIHNpemVfdCYgbGVuKQogICBMUFZPSUQgY2JfZGF0YTsKICAgaW50IHJh Y2g7CiAKLSAgaWYgKCFPcGVuQ2xpcGJvYXJkIChOVUxMKSkKKyAgaWYgKCFvcGVuX2NsaXBib2Fy ZCAoKSkKICAgICB7CiAgICAgICBsZW4gPSAwOwogICAgICAgcmV0dXJuOwotLSAKMi4zNi4xCgo= --Multipart=_Sat__2_Jul_2022_12_20_56_+0900_=T0iwyttcDWjFtWL Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple --Multipart=_Sat__2_Jul_2022_12_20_56_+0900_=T0iwyttcDWjFtWL--
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |