From: Willy Tarreau <w@1wt.eu>
To: Robert Abel <rabel@robertabel.eu>
Cc: Miguel Ojeda <miguel.ojeda.sandonis@gmail.com>,
linux-kernel <linux-kernel@vger.kernel.org>,
Geert Uytterhoeven <geert@linux-m68k.org>,
Andy Shevchenko <andy.shevchenko@gmail.com>
Subject: Re: [PATCH 3/4] auxdisplay: charlcd: fix x/y address commands
Date: Tue, 27 Feb 2018 06:19:05 +0100 [thread overview]
Message-ID: <20180227051905.GA26781@1wt.eu> (raw)
In-Reply-To: <50a2fd51-8bdb-d2b7-c2b3-7df638fdedde@robertabel.eu>
On Mon, Feb 26, 2018 at 11:43:36PM +0100, Robert Abel wrote:
> On 26 Feb 2018 17:49, Miguel Ojeda wrote:
> > On a general note, the code seems a bit convoluted for what it does,
> > specially without the comment written in the commit message :-) Isn't
> > it simpler to use a tiny array in the stack and put the numbers to be
> > converted instead of modifying the input sequence and dancing with
> > pointers?
>
> That's what I felt at first, too. If we can drop the backwards
> compatibility of repeated xy commands, the whole affair gets much
> easier, but will unfortunately break existing use.
>
> Ex. ^[[Lx004y002x006; --> x6y2, because repeats of x would just
> overwrite earlier values. That's what the while loop allowed in the
> first place.
>
> I suspect the while loop to parse was just a clever way of parsing y
> followed by x and x followed by y using the same code and the
> overwriting behavior is actually an unaccounted-for side-effect.
Well actually I don't see a problem there at all. The principle is simply
to accept any sequence assigning x or y or both. If you write x4y2x6, it
simply means that you changed your mind regarding x and that the last
value (6) is the one you want. Just as if you wrote "^[[Lx4;^[[y2;^[[x6;".
The while loop doesn't even try to do anything clever, it simply parses
everything matching x and y followed by digits. I think the only reason
for having both x and y processed in the same loop was to call
charlcd_gotoxy() only once for both axes.
Regards,
Willy
next prev parent reply other threads:[~2018-02-27 5:19 UTC|newest]
Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-02-09 23:50 [PATCH 0/3] auxdisplay: charlcd: miscellaneous patches Robert Abel
2018-02-09 23:50 ` [PATCH 1/3] auxdisplay: charlcd: fix hex literal ranges for graphics command Robert Abel
2018-02-09 23:50 ` [PATCH 2/3] auxdisplay: charlcd: use null character instead of zero literal to terminate strings Robert Abel
2018-02-09 23:50 ` [PATCH 3/3] auxdisplay: charlcd: replace octal literal with form-feed escape sequence Robert Abel
2018-02-10 9:43 ` Miguel Ojeda
2018-02-10 9:29 ` [PATCH 2/3] auxdisplay: charlcd: use null character instead of zero literal to terminate strings Miguel Ojeda
2018-02-10 8:58 ` [PATCH 1/3] auxdisplay: charlcd: fix hex literal ranges for graphics command Miguel Ojeda
2018-02-10 9:20 ` Willy Tarreau
2018-02-10 9:41 ` Miguel Ojeda
2018-02-12 13:56 ` Miguel Ojeda
2018-02-13 13:36 ` Andy Shevchenko
2018-02-13 19:15 ` Willy Tarreau
2018-02-14 23:17 ` Robert Abel
2018-02-15 10:57 ` Andy Shevchenko
2018-02-25 23:34 ` Robert Abel
2018-02-25 23:52 ` Robert Abel
2018-02-25 23:54 ` Robert Abel
2018-02-25 23:54 ` [PATCH 1/4] auxdisplay: charlcd: fix two-line command ^[[LN not marked as processed Robert Abel
2018-02-25 23:54 ` [PATCH 2/4] auxdisplay: charlcd: name x/y address struct Robert Abel
2018-02-25 23:54 ` [PATCH 3/4] auxdisplay: charlcd: fix x/y address commands Robert Abel
2018-02-25 23:54 ` [PATCH 4/4] auxdisplay: charlcd: make home command unshift display Robert Abel
2018-02-26 17:16 ` Miguel Ojeda
2018-02-26 8:46 ` [PATCH 3/4] auxdisplay: charlcd: fix x/y address commands Geert Uytterhoeven
2018-02-26 22:29 ` Robert Abel
2018-02-26 11:44 ` Andy Shevchenko
2018-02-26 16:54 ` Miguel Ojeda
2018-02-26 17:09 ` Andy Shevchenko
2018-02-26 17:26 ` Miguel Ojeda
2018-02-26 17:56 ` Andy Shevchenko
2018-02-26 23:00 ` Robert Abel
2018-02-26 22:38 ` Robert Abel
2018-02-26 23:06 ` Miguel Ojeda
2018-02-26 16:49 ` Miguel Ojeda
2018-02-26 16:57 ` Miguel Ojeda
2018-02-26 22:43 ` Robert Abel
2018-02-27 5:19 ` Willy Tarreau [this message]
2018-02-27 19:31 ` Miguel Ojeda
2018-02-27 23:29 ` Robert Abel
2018-02-28 0:05 ` [PATCH RFC 0/2] auxdisplay: charlcd: fix movement and home commands Robert Abel
2018-02-28 0:05 ` [PATCH 1/2] auxdisplay: charlcd: fix x/y address commands Robert Abel
2018-02-28 0:05 ` [PATCH 2/2] auxdisplay: charlcd: make home command unshift display Robert Abel
2018-02-28 4:21 ` [PATCH 3/4] auxdisplay: charlcd: fix x/y address commands Willy Tarreau
2018-02-26 23:05 ` Robert Abel
2018-02-27 5:20 ` Willy Tarreau
2018-02-26 8:35 ` [PATCH 2/4] auxdisplay: charlcd: name x/y address struct Geert Uytterhoeven
2018-02-26 15:59 ` Miguel Ojeda
2018-02-26 8:34 ` [PATCH 1/4] auxdisplay: charlcd: fix two-line command ^[[LN not marked as processed Geert Uytterhoeven
2018-02-26 15:53 ` Miguel Ojeda
2018-02-26 23:08 ` [PATCH 1/3] auxdisplay: charlcd: fix hex literal ranges for graphics command Robert Abel
2018-02-10 18:31 ` Geert Uytterhoeven
2018-02-10 18:58 ` Willy Tarreau
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180227051905.GA26781@1wt.eu \
--to=w@1wt.eu \
--cc=andy.shevchenko@gmail.com \
--cc=geert@linux-m68k.org \
--cc=linux-kernel@vger.kernel.org \
--cc=miguel.ojeda.sandonis@gmail.com \
--cc=rabel@robertabel.eu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.