[newlib-cygwin] Cygwin: clipboard: Fix a bug in read().

Takashi Yano tyan0@sourceware.org
Tue Dec 7 14:54:16 GMT 2021


https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=69ed8ca20c6bf0c92cefac6bcb761f2b7261b9c4

commit 69ed8ca20c6bf0c92cefac6bcb761f2b7261b9c4
Author: Takashi Yano <takashi.yano@nifty.ne.jp>
Date:   Tue Dec 7 22:25:34 2021 +0900

    Cygwin: clipboard: Fix a bug in read().
    
    - Fix a bug in fhandler_dev_clipboard::read() that the second read
      fails with 'Bad address'.
    
    Addresses:
      https://cygwin.com/pipermail/cygwin/2021-December/250141.html

Diff:
---
 winsup/cygwin/fhandler_clipboard.cc | 2 +-
 winsup/cygwin/release/3.3.4         | 6 ++++++
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/winsup/cygwin/fhandler_clipboard.cc b/winsup/cygwin/fhandler_clipboard.cc
index 0b87dd352..05f54ffb3 100644
--- a/winsup/cygwin/fhandler_clipboard.cc
+++ b/winsup/cygwin/fhandler_clipboard.cc
@@ -229,7 +229,7 @@ fhandler_dev_clipboard::read (void *ptr, size_t& len)
       if (pos < (off_t) clipbuf->cb_size)
 	{
 	  ret = (len > (clipbuf->cb_size - pos)) ? clipbuf->cb_size - pos : len;
-	  memcpy (ptr, &clipbuf[1] + pos , ret);
+	  memcpy (ptr, (char *) (clipbuf + 1) + pos, ret);
 	  pos += ret;
 	}
     }
diff --git a/winsup/cygwin/release/3.3.4 b/winsup/cygwin/release/3.3.4
new file mode 100644
index 000000000..f1c32a1a5
--- /dev/null
+++ b/winsup/cygwin/release/3.3.4
@@ -0,0 +1,6 @@
+Bug Fixes
+---------
+
+- Fix a bug in fhandler_dev_clipboard::read() that the second read
+  fails with 'Bad address'.
+  Addresses: https://cygwin.com/pipermail/cygwin/2021-December/250141.html


More information about the Cygwin-cvs mailing list