(Merge 3.2) Issue #10570: curses.putp() is now expecting a byte string, instead
of a Unicode string. This is an incompatible change, but putp() is used to emit terminfo commands, which are bytes strings, not Unicode strings.
This commit is contained in:
commit
65f51bb150
|
@ -183,7 +183,7 @@ def module_funcs(stdscr):
|
|||
win = curses.newwin(5,5)
|
||||
win = curses.newwin(5,5, 1,1)
|
||||
curses.nl() ; curses.nl(1)
|
||||
curses.putp('abc')
|
||||
curses.putp(b'abc')
|
||||
curses.qiflush()
|
||||
curses.raw() ; curses.raw(1)
|
||||
curses.setsyx(5,5)
|
||||
|
@ -283,6 +283,7 @@ def test_unget_wch(stdscr):
|
|||
def test_issue10570():
|
||||
b = curses.tparm(curses.tigetstr("cup"), 5, 3)
|
||||
assert type(b) is bytes
|
||||
curses.putp(b)
|
||||
|
||||
def main(stdscr):
|
||||
curses.savetty()
|
||||
|
|
|
@ -353,8 +353,8 @@ Library
|
|||
- Byte compilation in packaging is now isolated from the calling Python -B or
|
||||
-O options, instead of being disallowed under -B or buggy under -O.
|
||||
|
||||
- Issue #10570: curses.tigetstr() is now expecting a byte string, instead of
|
||||
a Unicode string.
|
||||
- Issue #10570: curses.putp() and curses.tigetstr() are now expecting a byte
|
||||
string, instead of a Unicode string.
|
||||
|
||||
- Issue #13295: http.server now produces valid HTML 4.01 strict.
|
||||
|
||||
|
|
|
@ -2418,7 +2418,8 @@ PyCurses_Putp(PyObject *self, PyObject *args)
|
|||
{
|
||||
char *str;
|
||||
|
||||
if (!PyArg_ParseTuple(args,"s;str", &str)) return NULL;
|
||||
if (!PyArg_ParseTuple(args,"y;str", &str))
|
||||
return NULL;
|
||||
return PyCursesCheckERR(putp(str), "putp");
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue