public inbox for cygwin-patches@cygwin.com
 help / color / mirror / Atom feed
* [PATCH] Cygwin: clipboard: Make intent of the code clearer.
@ 2021-12-08 12:26 Takashi Yano
  2021-12-10 10:56 ` Takashi Yano
  0 siblings, 1 reply; 3+ messages in thread
From: Takashi Yano @ 2021-12-08 12:26 UTC (permalink / raw)
  To: cygwin-patches

---
 winsup/cygwin/fhandler_clipboard.cc   | 4 ++--
 winsup/cygwin/include/sys/clipboard.h | 1 +
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/winsup/cygwin/fhandler_clipboard.cc b/winsup/cygwin/fhandler_clipboard.cc
index 05f54ffb3..14820701c 100644
--- a/winsup/cygwin/fhandler_clipboard.cc
+++ b/winsup/cygwin/fhandler_clipboard.cc
@@ -76,7 +76,7 @@ fhandler_dev_clipboard::set_clipboard (const void *buf, size_t len)
       clipbuf->cb_sec  = clipbuf->ts.tv_sec;
 #endif
       clipbuf->cb_size = len;
-      memcpy (&clipbuf[1], buf, len); // append user-supplied data
+      memcpy (clipbuf->cb_data, buf, len); // append user-supplied data
 
       GlobalUnlock (hmem);
       EmptyClipboard ();
@@ -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, (char *) (clipbuf + 1) + pos, ret);
+	  memcpy (ptr, clipbuf->cb_data + pos, ret);
 	  pos += ret;
 	}
     }
diff --git a/winsup/cygwin/include/sys/clipboard.h b/winsup/cygwin/include/sys/clipboard.h
index 4c00c8ea1..932fe98d9 100644
--- a/winsup/cygwin/include/sys/clipboard.h
+++ b/winsup/cygwin/include/sys/clipboard.h
@@ -44,6 +44,7 @@ typedef struct
     };
   };
   uint64_t      cb_size; // 8 bytes everywhere
+  char          cb_data[];
 } cygcb_t;
 
 #endif
-- 
2.34.1


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] Cygwin: clipboard: Make intent of the code clearer.
  2021-12-08 12:26 [PATCH] Cygwin: clipboard: Make intent of the code clearer Takashi Yano
@ 2021-12-10 10:56 ` Takashi Yano
  2021-12-10 11:02   ` Corinna Vinschen
  0 siblings, 1 reply; 3+ messages in thread
From: Takashi Yano @ 2021-12-10 10:56 UTC (permalink / raw)
  To: cygwin-patches

On Wed,  8 Dec 2021 21:26:45 +0900
Takashi Yano wrote:
> ---
>  winsup/cygwin/fhandler_clipboard.cc   | 4 ++--
>  winsup/cygwin/include/sys/clipboard.h | 1 +
>  2 files changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/winsup/cygwin/fhandler_clipboard.cc b/winsup/cygwin/fhandler_clipboard.cc
> index 05f54ffb3..14820701c 100644
> --- a/winsup/cygwin/fhandler_clipboard.cc
> +++ b/winsup/cygwin/fhandler_clipboard.cc
> @@ -76,7 +76,7 @@ fhandler_dev_clipboard::set_clipboard (const void *buf, size_t len)
>        clipbuf->cb_sec  = clipbuf->ts.tv_sec;
>  #endif
>        clipbuf->cb_size = len;
> -      memcpy (&clipbuf[1], buf, len); // append user-supplied data
> +      memcpy (clipbuf->cb_data, buf, len); // append user-supplied data
>  
>        GlobalUnlock (hmem);
>        EmptyClipboard ();
> @@ -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, (char *) (clipbuf + 1) + pos, ret);
> +	  memcpy (ptr, clipbuf->cb_data + pos, ret);
>  	  pos += ret;
>  	}
>      }
> diff --git a/winsup/cygwin/include/sys/clipboard.h b/winsup/cygwin/include/sys/clipboard.h
> index 4c00c8ea1..932fe98d9 100644
> --- a/winsup/cygwin/include/sys/clipboard.h
> +++ b/winsup/cygwin/include/sys/clipboard.h
> @@ -44,6 +44,7 @@ typedef struct
>      };
>    };
>    uint64_t      cb_size; // 8 bytes everywhere
> +  char          cb_data[];
>  } cygcb_t;
>  
>  #endif
> -- 
> 2.34.1

What should we do with this one?

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

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] Cygwin: clipboard: Make intent of the code clearer.
  2021-12-10 10:56 ` Takashi Yano
@ 2021-12-10 11:02   ` Corinna Vinschen
  0 siblings, 0 replies; 3+ messages in thread
From: Corinna Vinschen @ 2021-12-10 11:02 UTC (permalink / raw)
  To: cygwin-patches

On Dec 10 19:56, Takashi Yano wrote:
> On Wed,  8 Dec 2021 21:26:45 +0900
> Takashi Yano wrote:
> > ---
> >  winsup/cygwin/fhandler_clipboard.cc   | 4 ++--
> >  winsup/cygwin/include/sys/clipboard.h | 1 +
> >  2 files changed, 3 insertions(+), 2 deletions(-)
> > 
> > diff --git a/winsup/cygwin/fhandler_clipboard.cc b/winsup/cygwin/fhandler_clipboard.cc
> > index 05f54ffb3..14820701c 100644
> > --- a/winsup/cygwin/fhandler_clipboard.cc
> > +++ b/winsup/cygwin/fhandler_clipboard.cc
> > @@ -76,7 +76,7 @@ fhandler_dev_clipboard::set_clipboard (const void *buf, size_t len)
> >        clipbuf->cb_sec  = clipbuf->ts.tv_sec;
> >  #endif
> >        clipbuf->cb_size = len;
> > -      memcpy (&clipbuf[1], buf, len); // append user-supplied data
> > +      memcpy (clipbuf->cb_data, buf, len); // append user-supplied data
> >  
> >        GlobalUnlock (hmem);
> >        EmptyClipboard ();
> > @@ -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, (char *) (clipbuf + 1) + pos, ret);
> > +	  memcpy (ptr, clipbuf->cb_data + pos, ret);
> >  	  pos += ret;
> >  	}
> >      }
> > diff --git a/winsup/cygwin/include/sys/clipboard.h b/winsup/cygwin/include/sys/clipboard.h
> > index 4c00c8ea1..932fe98d9 100644
> > --- a/winsup/cygwin/include/sys/clipboard.h
> > +++ b/winsup/cygwin/include/sys/clipboard.h
> > @@ -44,6 +44,7 @@ typedef struct
> >      };
> >    };
> >    uint64_t      cb_size; // 8 bytes everywhere
> > +  char          cb_data[];
> >  } cygcb_t;
> >  
> >  #endif
> > -- 
> > 2.34.1
> 
> What should we do with this one?

Do your worst :)


Thanks,
Corinna

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-12-10 11:02 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-12-08 12:26 [PATCH] Cygwin: clipboard: Make intent of the code clearer Takashi Yano
2021-12-10 10:56 ` Takashi Yano
2021-12-10 11:02   ` Corinna Vinschen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).