[newlib-cygwin/main] Cygwin: clipboard: Only SEEK_SET and SEEK_CUR are supported

Corinna Vinschen corinna@sourceware.org
Wed Aug 9 15:25:11 GMT 2023


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

commit 5b53633b5dd02adf7b2b00ac0b69906e4ea3ffe6
Author:     Corinna Vinschen <corinna@vinschen.de>
AuthorDate: Wed Aug 9 16:56:02 2023 +0200
Commit:     Corinna Vinschen <corinna@vinschen.de>
CommitDate: Wed Aug 9 16:56:02 2023 +0200

    Cygwin: clipboard: Only SEEK_SET and SEEK_CUR are supported
    
    Make sure of that, especially given the addition of
    SEEK_DATA and SEEK_HOLE.
    
    Signed-off-by: Corinna Vinschen <corinna@vinschen.de>

Diff:
---
 winsup/cygwin/fhandler/clipboard.cc | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/winsup/cygwin/fhandler/clipboard.cc b/winsup/cygwin/fhandler/clipboard.cc
index fe3545bf55c0..376d43440749 100644
--- a/winsup/cygwin/fhandler/clipboard.cc
+++ b/winsup/cygwin/fhandler/clipboard.cc
@@ -322,6 +322,13 @@ fhandler_dev_clipboard::lseek (off_t offset, int whence)
    * On writes we use this to decide how to write - empty and write, or open, copy, empty
    * and write
    */
+  if (whence == SEEK_CUR)
+    return 0;
+  if (whence != SEEK_SET)
+    {
+      set_errno (EINVAL);
+      return -1;
+    }
   pos = offset;
   /* treat seek like rewind */
   if (membuffer)


More information about the Cygwin-cvs mailing list