[Python-checkins] bpo-46000: Improve NetBSD curses compatibility (GH-29947)

serhiy-storchaka webhook-mailer at python.org
Fri Dec 10 04:41:53 EST 2021


https://github.com/python/cpython/commit/2fb797e93c6bbd44dfcbe23f63acfa240a87e48a
commit: 2fb797e93c6bbd44dfcbe23f63acfa240a87e48a
branch: main
author: Thomas Klausner <tk at giga.or.at>
committer: serhiy-storchaka <storchaka at gmail.com>
date: 2021-12-10T11:41:47+02:00
summary:

bpo-46000: Improve NetBSD curses compatibility (GH-29947)

files:
A Misc/NEWS.d/next/Core and Builtins/2021-12-07-11-42-44.bpo-46000.v_ru3k.rst
M Modules/_cursesmodule.c

diff --git a/Misc/NEWS.d/next/Core and Builtins/2021-12-07-11-42-44.bpo-46000.v_ru3k.rst b/Misc/NEWS.d/next/Core and Builtins/2021-12-07-11-42-44.bpo-46000.v_ru3k.rst
new file mode 100644
index 0000000000000..68e4bfa9e77b1
--- /dev/null
+++ b/Misc/NEWS.d/next/Core and Builtins/2021-12-07-11-42-44.bpo-46000.v_ru3k.rst	
@@ -0,0 +1 @@
+Improve compatibility of the :mod:`curses` module with NetBSD curses.
diff --git a/Modules/_cursesmodule.c b/Modules/_cursesmodule.c
index 3770a032e977d..7ebad692c2381 100644
--- a/Modules/_cursesmodule.c
+++ b/Modules/_cursesmodule.c
@@ -1230,8 +1230,8 @@ PyCursesWindow_ChgAt(PyCursesWindowObject *self, PyObject *args)
         return NULL;
     }
 
-    color = (short)((attr >> 8) & 0xff);
-    attr = attr - (color << 8);
+    color = (short) PAIR_NUMBER(attr);
+    attr = attr & A_ATTRIBUTES;
 
     if (use_xy) {
         rtn = mvwchgat(self->win,y,x,num,attr,color,NULL);



More information about the Python-checkins mailing list