The curses API provides the A_ATTRIBUTES and A_CHARTEXT bit masks for
getting the attributes and character parts of a chtype, respectively. We
should use provided constants instead of using 0xff.
Signed-off-by: Matthew Kilgore <mattkilgore12@gmail.com>
---
ui/curses.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/ui/curses.c b/ui/curses.c
index ec281125acbd..84003f56a323 100644
--- a/ui/curses.c
+++ b/ui/curses.c
@@ -75,8 +75,8 @@ static void curses_update(DisplayChangeListener *dcl,
line = screen + y * width;
for (h += y; y < h; y ++, line += width) {
for (x = 0; x < width; x++) {
- chtype ch = line[x] & 0xff;
- chtype at = line[x] & ~0xff;
+ chtype ch = line[x] & A_CHARTEXT;
+ chtype at = line[x] & A_ATTRIBUTES;
ret = getcchar(&vga_to_curses[ch], wch, &attrs, &colors, NULL);
if (ret == ERR || wch[0] == 0) {
wch[0] = ch;
--
2.23.0
On 10/4/19 5:53 AM, Matthew Kilgore wrote:
> The curses API provides the A_ATTRIBUTES and A_CHARTEXT bit masks for
> getting the attributes and character parts of a chtype, respectively. We
> should use provided constants instead of using 0xff.
>
> Signed-off-by: Matthew Kilgore <mattkilgore12@gmail.com>
Thanks for splitting your previous patch!
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> ---
> ui/curses.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/ui/curses.c b/ui/curses.c
> index ec281125acbd..84003f56a323 100644
> --- a/ui/curses.c
> +++ b/ui/curses.c
> @@ -75,8 +75,8 @@ static void curses_update(DisplayChangeListener *dcl,
> line = screen + y * width;
> for (h += y; y < h; y ++, line += width) {
> for (x = 0; x < width; x++) {
> - chtype ch = line[x] & 0xff;
> - chtype at = line[x] & ~0xff;
> + chtype ch = line[x] & A_CHARTEXT;
> + chtype at = line[x] & A_ATTRIBUTES;
> ret = getcchar(&vga_to_curses[ch], wch, &attrs, &colors, NULL);
> if (ret == ERR || wch[0] == 0) {
> wch[0] = ch;
>
Matthew Kilgore, le jeu. 03 oct. 2019 23:53:37 -0400, a ecrit:
> The curses API provides the A_ATTRIBUTES and A_CHARTEXT bit masks for
> getting the attributes and character parts of a chtype, respectively. We
> should use provided constants instead of using 0xff.
>
> Signed-off-by: Matthew Kilgore <mattkilgore12@gmail.com>
Reviewed-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Tested-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
> ---
> ui/curses.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/ui/curses.c b/ui/curses.c
> index ec281125acbd..84003f56a323 100644
> --- a/ui/curses.c
> +++ b/ui/curses.c
> @@ -75,8 +75,8 @@ static void curses_update(DisplayChangeListener *dcl,
> line = screen + y * width;
> for (h += y; y < h; y ++, line += width) {
> for (x = 0; x < width; x++) {
> - chtype ch = line[x] & 0xff;
> - chtype at = line[x] & ~0xff;
> + chtype ch = line[x] & A_CHARTEXT;
> + chtype at = line[x] & A_ATTRIBUTES;
> ret = getcchar(&vga_to_curses[ch], wch, &attrs, &colors, NULL);
> if (ret == ERR || wch[0] == 0) {
> wch[0] = ch;
> --
> 2.23.0
>
--
Samuel
The nice thing about Windows is - It does not just crash, it displays a
dialog box and lets you press 'OK' first.
(Arno Schaefer's .sig)
© 2016 - 2025 Red Hat, Inc.