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 00000000000000..68e4bfa9e77b15 --- /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 a32cc4b88435cb..f95677cee57507 100644 --- a/Modules/_cursesmodule.c +++ b/Modules/_cursesmodule.c @@ -1077,8 +1077,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);