[PATCH weston v2 1/1] Allow simple-dmabuf-drm to pass y_inverted flag
Pekka Paalanen
ppaalanen at gmail.com
Fri Mar 16 13:01:17 UTC 2018
On Fri, 16 Mar 2018 13:18:42 +0100
Guido Günther <agx at sigxcpu.org> wrote:
> On Fri, Mar 16, 2018 at 01:55:41PM +0200, Pekka Paalanen wrote:
> > On Thu, 15 Mar 2018 17:34:55 +0100
> > Guido Günther <agx at sigxcpu.org> wrote:
> >
> > > This allows to check if ZWP_LINUX_BUFFER_PARAMS_V1_FLAGS_Y_INVERT is
> > > interpreted correctly by the compositor.
> > > ---
> > > clients/simple-dmabuf-drm.c | 31 +++++++++++++++++++++++--------
> > > 1 file changed, 23 insertions(+), 8 deletions(-)
> > >
> > > diff --git a/clients/simple-dmabuf-drm.c b/clients/simple-dmabuf-drm.c
> > > index 14d716de..a6e8d870 100644
> > > --- a/clients/simple-dmabuf-drm.c
> > > +++ b/clients/simple-dmabuf-drm.c
> > > @@ -59,6 +59,10 @@
> > > extern const unsigned nv12_tiled[];
> > > struct buffer;
> > >
> > > +/* Possible options that affect the displayed image */
> > > +#define OPT_Y_INVERTED 1
> >
> > Hi,
> >
> > why not use ZWP_LINUX_BUFFER_PARAMS_V1_FLAGS_Y_INVERT directly?
>
> I had that first but then decided to use OPT_* so we can do other stuff
> like changing buffer content via options later on. We could also fold
> --import-immediate/is_immediate into that.
Ah, that's a good reason. Please do mention it in the commit message.
> > > @@ -852,22 +860,29 @@ main(int argc, char **argv)
> > > struct display *display;
> > > struct window *window;
> > > int is_immediate = 0;
> > > + int opts = 0;
> > > int import_format = DRM_FORMAT_XRGB8888;
> > > int ret = 0, i = 0;
> > >
> > > if (argc > 1) {
> > > static const char import_mode[] = "--import-immediate=";
> > > static const char format[] = "--import-format=";
> > > + static const char y_inverted[] = "--y-inverted=";
> > > for (i = 1; i < argc; i++) {
> > > if (!strncmp(argv[i], import_mode,
> > > sizeof(import_mode) - 1)) {
> > > - is_immediate = is_import_mode_immediate(argv[i]
> > > + is_immediate = is_true(argv[i]
> > > + sizeof(import_mode) - 1);
> > > }
> > > else if (!strncmp(argv[i], format, sizeof(format) - 1)) {
> > > import_format = parse_import_format(argv[i]
> > > + sizeof(format) - 1);
> > > }
> > > + else if (!strncmp(argv[i], y_inverted,
> > > + sizeof(y_inverted) - 1)) {
> > > + if (is_true(argv[i] + sizeof(y_inverted) - 1))
> > > + opts |= OPT_Y_INVERTED;
> > > + }
> >
> > Could I persuade you to change this all to use getopt_long()? :-)
>
> Can do. Just let me know if the above OPT_ is o.k. (in this case it
> would be a follow up).
With the justification, it's good. :-)
Thanks for bearing with me,
pq
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/wayland-devel/attachments/20180316/658f6093/attachment.sig>
More information about the wayland-devel
mailing list