From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2155) id DB5653858020; Wed, 9 Aug 2023 15:25:11 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org DB5653858020 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1691594711; bh=i+4D2+afZurJNhx5x/Wlkn57opQn9z/d2DizLK9kbmY=; h=From:To:Subject:Date:From; b=UyFPDbkd4qf2FuyvvvfNGbyCzEQ3naqGIUroFSuHTNzbJJH71cTZLRdEXuB2/q8ds TPyG2CFOoWOJTcM+BI5pkAJYhBCYEk7RKM/ObhdPnewN1tP1h1jDGBnpri5dNvtF7Y 4WIIoYE6deRA/8WDCScaHUgenz3VXbdUMmvnJ9rs= Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable From: Corinna Vinschen To: cygwin-cvs@sourceware.org Subject: [newlib-cygwin/main] Cygwin: clipboard: Only SEEK_SET and SEEK_CUR are supported X-Act-Checkin: newlib-cygwin X-Git-Author: Corinna Vinschen X-Git-Refname: refs/heads/main X-Git-Oldrev: 07092a52e9516f0c341f7f3e5e6169c1e33b6fcc X-Git-Newrev: 5b53633b5dd02adf7b2b00ac0b69906e4ea3ffe6 Message-Id: <20230809152511.DB5653858020@sourceware.org> Date: Wed, 9 Aug 2023 15:25:11 +0000 (GMT) List-Id: https://sourceware.org/git/gitweb.cgi?p=3Dnewlib-cygwin.git;h=3D5b53633b5dd= 02adf7b2b00ac0b69906e4ea3ffe6 commit 5b53633b5dd02adf7b2b00ac0b69906e4ea3ffe6 Author: Corinna Vinschen AuthorDate: Wed Aug 9 16:56:02 2023 +0200 Commit: Corinna Vinschen CommitDate: Wed Aug 9 16:56:02 2023 +0200 Cygwin: clipboard: Only SEEK_SET and SEEK_CUR are supported =20 Make sure of that, especially given the addition of SEEK_DATA and SEEK_HOLE. =20 Signed-off-by: Corinna Vinschen Diff: --- winsup/cygwin/fhandler/clipboard.cc | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/winsup/cygwin/fhandler/clipboard.cc b/winsup/cygwin/fhandler/c= lipboard.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 whenc= e) * On writes we use this to decide how to write - empty and write, or op= en, copy, empty * and write */ + if (whence =3D=3D SEEK_CUR) + return 0; + if (whence !=3D SEEK_SET) + { + set_errno (EINVAL); + return -1; + } pos =3D offset; /* treat seek like rewind */ if (membuffer)