summaryrefslogtreecommitdiffstats
path: root/Modules/_cursesmodule.c
Commit message (Collapse)AuthorAgeFilesLines
* bpo-29176 Use tmpfile() in curses module (#235)Christian Heimes2017-03-021-37/+15
| | | | | | | | | | | The curses module used mkstemp() + fopen() to create a temporary file in /tmp. The /tmp directory does not exist on Android. The tmpfile() function simplifies the task a lot. It creates a temporary file in a correct directory, takes care of cleanup and returns FILE*. tmpfile is supported on all platforms (C89, POSIX 2001, Android, Windows). Signed-off-by: Christian Heimes <christian@python.org>
* bpo-29176: Fix name of the _curses.window class (#52)Victor Stinner2017-02-121-1/+1
| | | | Set name to "_curses.window" instead of "_curses.curses window" (with a space!?).
* Issue #28999: Use Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE whereverSerhiy Storchaka2017-01-231-40/+22
| | | | possible. Patch is writen with Coccinelle.
* Initialize variables to fix compiler warningsVictor Stinner2016-12-091-1/+1
| | | | | Warnings seen on the "AMD64 Debian PGO 3.x" buildbot. Warnings are false positive, but variable initialization should not harm performances.
* Issue #28549: Fixed segfault in curses's addch() with ncurses6.Serhiy Storchaka2016-10-301-8/+9
|\
| * Issue #28549: Fixed segfault in curses's addch() with ncurses6.Serhiy Storchaka2016-10-301-8/+9
| |
* | Issue #28526: Use PyUnicode_AsEncodedString() instead ofSerhiy Storchaka2016-10-271-2/+2
|\ \ | |/ | | | | | | PyUnicode_AsEncodedObject() in _curese to ensure that the result is a bytes object.
| * Issue #28526: Use PyUnicode_AsEncodedString() instead ofSerhiy Storchaka2016-10-271-2/+2
| | | | | | | | | | PyUnicode_AsEncodedObject() in _curese to ensure that the result is a bytes object.
* | Avoid calling functions with an empty string as format stringVictor Stinner2016-09-061-1/+1
|/ | | | Directly pass NULL rather than an empty string.
* merge 3.4Benjamin Peterson2016-08-161-0/+8
|\
| * fail when negative values are passed to instr()Benjamin Peterson2016-08-161-0/+8
| |
* | merge 3.4Benjamin Peterson2016-08-141-0/+8
|\ \ | |/
| * do not allow reading negative values with getstr()Benjamin Peterson2016-08-141-0/+8
| |
* | Issue #4254: Adds _curses.update_lines_cols() Patch by Arnon YaariSteve Dower2015-04-151-0/+10
| |
* | Issue #23944: Argument Clinic now wraps long impl prototypes at column 78.Larry Hastings2015-04-141-2/+3
| |
* | Issue #23501: Argumen Clinic now generates code into separate files by default.Serhiy Storchaka2015-04-031-67/+3
| |
* | Removed redundant casts to `char *`.Serhiy Storchaka2014-09-281-1/+1
|/ | | | Corresponding functions now accept `const char *` (issue #1772673).
* Issue #21088: Bugfix for curses.window.addch() regression in 3.4.0.Larry Hastings2014-05-041-12/+12
| | | | In porting to Argument Clinic, the first two arguments were reversed.
* #Issue 20456: Several improvements and bugfixes for Argument Clinic,Larry Hastings2014-02-011-2/+2
| | | | | including correctly generating code for Clinic blocks inside C preprocessor conditional blocks.
* Issue #20326: Argument Clinic now uses a simple, unique signature toLarry Hastings2014-01-281-2/+2
| | | | | | | | | | annotate text signatures in docstrings, resulting in fewer false positives. "self" parameters are also explicitly marked, allowing inspect.Signature() to authoritatively detect (and skip) said parameters. Issue #20326: Argument Clinic now generates separate checksums for the input and output sections of the block, allowing external tools to verify that the input has not changed (and thus the output is not out-of-date).
* Issue #20390: Small fixes and improvements for Argument Clinic.Larry Hastings2014-01-261-5/+5
|
* Issue #20189: Four additional builtin types (PyTypeObject,Larry Hastings2014-01-241-2/+2
| | | | | | PyMethodDescr_Type, _PyMethodWrapper_Type, and PyWrapperDescr_Type) have been modified to provide introspection information for builtins. Also: many additional Lib, test suite, and Argument Clinic fixes.
* Two minor Argument Clinic bugfixes: use the name of the class in theLarry Hastings2014-01-221-6/+7
| | | | | docstring for __new__ and __init__, and always use "goto exit" instead of returning "NULL" for failure to parse (as _new__ and __init__ return ints).
* Issue #20315: Removed support for backward compatibility with early 2.x ↵Serhiy Storchaka2014-01-201-2/+0
|\ | | | | | | | | | | | | versions. Removed backward compatibility alias curses.window.nooutrefresh which should be removed in 2.3.
* | Issue #20226: Major improvements to Argument Clinic.Larry Hastings2014-01-161-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * You may now specify an expression as the default value for a parameter! Example: "sys.maxsize - 1". This support is intentionally quite limited; you may only use values that can be represented as static C values. * Removed "doc_default", simplified support for "c_default" and "py_default". (I'm not sure we still even need "py_default", but I'm leaving it in for now in case a use presents itself.) * Parameter lines support a trailing '\\' as a line continuation character, allowing you to break up long lines. * The argument parsing code generated when supporting optional groups now uses PyTuple_GET_SIZE instead of PyTuple_GetSize, leading to a 850% speedup in parsing. (Just kidding, this is an unmeasurable difference.) * A bugfix for the recent regression where the generated prototype from pydoc for builtins would be littered with unreadable "=<object ...>"" default values for parameters that had no default value. * Converted some asserts into proper failure messages. * Many doc improvements and fixes.
* | Issue #19273: The marker comments Argument Clinic uses have been changedLarry Hastings2014-01-071-6/+6
| | | | | | | | to improve readability.
* | ncurses' winch and mvwinch return an unsigned longChristian Heimes2013-12-041-2/+3
|\ \ | |/
| * ncurses' winch and mvwinch return an unsigned longChristian Heimes2013-12-041-2/+3
| |
* | Issue #19674: inspect.signature() now produces a correct signatureLarry Hastings2013-11-231-4/+8
| | | | | | | | for some builtins.
* | Issue #19474: Argument Clinic now always specifies a default value forLarry Hastings2013-11-201-4/+4
| | | | | | | | variables in option groups, to prevent "uninitialized value" warnings.
* | Argument Clinic: rename "self" to "module" for module-level functions.Larry Hastings2013-11-181-1/+0
| |
* | Issue #19512, #19515: remove shared identifiers, move identifiers where theyVictor Stinner2013-11-071-1/+1
| | | | | | | | | | | | | | are used. Move also _Py_IDENTIFIER() defintions to the top in modified files to remove identifiers duplicated in the same file.
* | Issue #19512: add some common identifiers to only create common strings once,Victor Stinner2013-11-061-1/+1
| | | | | | | | | | | | | | instead of creating temporary Unicode string objects Add also more identifiers in pythonrun.c to avoid temporary Unicode string objets for the interactive interpreter.
* | Fix compilation of the curses module (broken by issue #16612).Serhiy Storchaka2013-10-191-1/+1
| |
* | Issue #16612: Add "Argument Clinic", a compile-time preprocessorLarry Hastings2013-10-191-41/+114
| | | | | | | | for C files to generate argument parsing code. (See PEP 436.)
* | Issue #18571: Implementation of the PEP 446: file descriptors and file handlesVictor Stinner2013-08-271-32/+39
| | | | | | | | | | are now created non-inheritable; add functions os.get/set_inheritable(), os.get/set_handle_inheritable() and socket.socket.get/set_inheritable().
* | Fix possible NULL pointer dereference in PyCurses_Start_Color()Christian Heimes2013-07-261-0/+4
|\ \ | |/ | | | | CID 1058276
| * Fix possible NULL pointer dereference in PyCurses_Start_Color()Christian Heimes2013-07-261-0/+4
| | | | | | | | CID 1058276
* | Issue #18203: Add _PyMem_RawStrdup() and _PyMem_Strdup()Victor Stinner2013-07-071-4/+4
| | | | | | | | | | Replace strdup() with _PyMem_RawStrdup() or _PyMem_Strdup(), depending if the GIL is held or not.
* | Issue #18203: Replace malloc() with PyMem_Malloc() in Python modulesVictor Stinner2013-07-071-2/+2
| | | | | | | | | | Replace malloc() with PyMem_Malloc() when the GIL is held, or with PyMem_RawMalloc() otherwise.
* | Reuse Py_MIN and Py_MAX macros: remove duplicate MIN/MAX macrosVictor Stinner2013-06-041-9/+5
|/ | | | multiprocessing.h: remove unused MIN and MAX macros
* C89 declaration complianceBenjamin Peterson2013-05-161-1/+1
|
* Issue #17209: curses.window.get_wch() now handles correctly ↵Victor Stinner2013-03-211-0/+3
| | | | KeyboardInterrupt (CTRL+c)
* Merge: #8862: Fix curses cleanup with getchar is interrupted by a signal.R David Murray2013-03-191-1/+3
|\ | | | | | | | | | | I have no idea how one would write a test for this. Patch by July Tikhonov.
| * #8862: Fix curses cleanup with getchar is interrupted by a signal.R David Murray2013-03-191-1/+3
| | | | | | | | | | | | I have no idea how one would write a test for this. Patch by July Tikhonov.
* | Issue #15876: Fix a refleak in the curses moduleRoss Lagerwall2012-09-071-0/+1
| | | | | | | | The refleak occurred when assigning to window.encoding.
* | Close #14223: Fix window.addch(curses.ACS_HLINE)Victor Stinner2012-09-011-27/+7
| | | | | | | | | | | | | | | | | | Fix window.addch() of the curses module for special characters like curses.ACS_HLINE: the Python function addch(int) and addch(bytes) is now calling the C function waddch()/mvwaddch() (as it was done in Python 3.2), instead of wadd_wch()/mvwadd_wch(). The Python function addch(str) is still calling the C function wadd_wch()/mvwadd_wch() if the Python curses is linked to libncursesw.
* | Issue #15785: Modify window.get_wch() API of the curses module: return aVictor Stinner2012-08-281-1/+4
| | | | | | | | | | | | character for most keys, and an integer for special keys, instead of always returning an integer. So it is now possible to distinguish special keys like keypad keys.
* | fix compiler warningsBenjamin Peterson2012-03-141-4/+4
| |
* | Close #14223: curses.addch() is no more limited to the range 0-255 when theVictor Stinner2012-03-081-1/+1
| | | | | | | | | | Python curses is not linked to libncursesw. It was a regression introduced in Python 3.3a1.