On Thu, 4 Nov 2021 22:40:40 -0700
Mark Geisert wrote:
> Takashi Yano via Cygwin wrote:
> > On Wed, 3 Nov 2021 22:04:05 +0900
> > Takashi Yano wrote:
> >> On Wed,  3 Nov 2021 02:59:38 -0700
> >> Mark Geisert wrote:
> >>> The following packages have been uploaded to the Cygwin distribution:
> >>>
> >>> * cygutils-1.4.16-8
> >>> * cygutils-extra-1.4.16-8
> >>> * cygutils-x11-1.4.16-8
> [...]
> >>> This update also provides a new feature: robust copy/paste between
> >>> 32-bit and 64-bit Cygwin environments, provided both are running
> >>> 3.3.0 (Test) or higher.
> >>
> >> I have tested the 1.4.16-8 (Test) and confirmed the following cases
> >> work as expected.
> >>
> >> 1) Charset conversion under locale other than UTF-8.
> >> 2) putclip error.
> >> 3) 32-bit and 64-bit inter-operability.
> > 
> > One small thing I noticed is that time stamp of /dev/clipboard
> > is broken with the following scenario.
> > 1) Run 'echo A | putclip' in 32bit cygwin
> > 2) Run 'ls -l /dev/clipboard' in 64bit cygwin
> 
> Yes indeed :-()
> I'll debug this.  Thanks for the report.

I guess you just forgot to expand struct timespec in 32bit to
64bit layout in the following code.

-      if (cygNewFormat)
+      if (cygNewFormat == 2)
         {
           cygcb_t *clipbufX = (cygcb_t *) clipbuf;
+          clipbufX->cb_size = convlen;
+          clock_gettime (CLOCK_REALTIME, &clipbufX->ts);
+          memcpy (&clipbufX[1], convbuf, convlen);
+        }
+      else if (cygNewFormat == 1)
+        {
+          cygcb_old_t *clipbufX = (cygcb_old_t *) clipbuf;

-- 
Takashi Yano <takashi.y...@nifty.ne.jp>

-- 
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

Reply via email to