PyPy3: curses.initscr() raises ctype TypeError

Issue #1946 resolved
arianaut
created an issue

Here's how the bug looks running in the interpreter:

Python 3.2.5 (001db61e74f0, Dec 11 2014, 11:07:52)
[PyPy 2.5.0-alpha0 with GCC 4.2.1 Compatible Clang 3.5.0 (tags/RELEASE_350/final)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
And now for something completely different: ``PyPy 1.1.0beta released:
http://codespeak.net/pypy/dist/pypy/doc/release-1.1.0.html''
>>>> import curses
>>>> curses.initscr()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/opt/pypy3/lib-python/3/curses/__init__.py", line 31, in initscr
    fd=_sys.__stdout__.fileno())
  File "/opt/pypy3/lib_pypy/_curses.py", line 1131, in setupterm
    if lib.setupterm(term, fd, err) == lib.ERR:
TypeError: initializer for ctype 'char *' must be a bytes or list or tuple, not str

I am using the latest pypy revision for py3k on Arch Linux, built using https://aur.archlinux.org/packages/pypy3-hg/

Comments (9)

  1. Armin Rigo

    The fix is in the stdlib of PyPy, so you can simply apply the two-lines patch to an existing PyPy3 release and that's it. It will of course officially be in the next release, but no ETA is known (to me).

  2. Log in to comment