Messages in this thread | | | Date | Tue, 7 Feb 2017 16:53:34 +0100 | From | Maxime Ripard <> | Subject | Re: [PATCH 2/2] drm/panel: Add driver for sitronix ST7789V panel |
| |
On Mon, Feb 06, 2017 at 02:26:20PM +0100, Thierry Reding wrote: > > +#define NUMARGS(...) (sizeof((int[]){__VA_ARGS__}) / sizeof(int)) > > +#define st7789v_send(ctx, cmd, ...) \ > > + st7789v_write_command_data(ctx, cmd, NUMARGS(__VA_ARGS__), \ > > + ##__VA_ARGS__) > > How is this going to work if any of the arguments happens to not be an > int? What if you have something like this: > > u8 value = 0x2; > > st7789v_write_command_data(ctx, cmd, 0x1, value, 0x3); > > ? Wouldn't that invalidly read "value" as int and wrongly increment the > ap by three bytes too many?
Hmmm, it might be. I'll remove it, and take all your other changes into account.
Thanks! Maxime
-- Maxime Ripard, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com [unhandled content-type:application/pgp-signature] | |