summaryrefslogtreecommitdiff
path: root/Python/traceback.c
Commit message (Collapse)AuthorAgeFilesLines
* bpo-31949: Fixed several issues in printing tracebacks ↵Serhiy Storchaka2017-11-151-51/+51
| | | | | | | | | | | | (PyTraceBack_Print()). (#4289) * Setting sys.tracebacklimit to 0 or less now suppresses printing tracebacks. * Setting sys.tracebacklimit to None now causes using the default limit. * Setting sys.tracebacklimit to an integer larger than LONG_MAX now means using the limit LONG_MAX rather than the default limit. * Fixed integer overflows in the case of more than 2**31 traceback items on Windows. * Fixed output errors handling.
* bpo-25658: Implement PEP 539 for Thread Specific Storage (TSS) API (GH-1362)Masayuki Yamamoto2017-10-061-1/+1
| | | | | | | | | See PEP 539 for details. Highlights of changes: - Add Thread Specific Storage (TSS) API - Document the Thread Local Storage (TLS) API as deprecated - Update code that used TLS API to use TSS API
* bpo-30860: Consolidate stateful runtime globals. (#3397)Eric Snow2017-09-071-0/+1
| | | | | | | * group the (stateful) runtime globals into various topical structs * consolidate the topical structs under a single top-level _PyRuntimeState struct * add a check-c-globals.py script that helps identify runtime globals Other globals are excluded (see globals.txt and check-c-globals.py).
* bpo-31370: Remove support for threads-less builds (#3385)Antoine Pitrou2017-09-071-16/+0
| | | | | | * Remove Setup.config * Always define WITH_THREAD for compatibility.
* bpo-6532: Make the thread id an unsigned integer. (#781)Serhiy Storchaka2017-03-231-1/+1
| | | | | | | | | | | * bpo-6532: Make the thread id an unsigned integer. From C API side the type of results of PyThread_start_new_thread() and PyThread_get_thread_ident(), the id parameter of PyThreadState_SetAsyncExc(), and the thread_id field of PyThreadState changed from "long" to "unsigned long". * Restore a check in thread_get_ident().
* Issue #23782: Fixed possible memory leak in _PyTraceback_Add() and exceptionSerhiy Storchaka2016-10-181-20/+26
|\ | | | | | | loss in PyTraceBack_Here().
| * Issue #23782: Fixed possible memory leak in _PyTraceback_Add() and exceptionSerhiy Storchaka2016-10-181-20/+26
| | | | | | | | loss in PyTraceBack_Here().
* | Avoid calling functions with an empty string as format stringVictor Stinner2016-09-051-2/+2
| | | | | | | | Directly pass NULL rather than an empty string.
* | Fix reference leak in tb_printinternal()Victor Stinner2016-08-201-0/+2
| | | | | | | | Issue #26823.
* | Issue #26823: Abbreviate recursive tracebacksNick Coghlan2016-08-151-4/+32
| | | | | | | | | | | | | | | | Large sections of repeated lines in tracebacks are now abbreviated as "[Previous line repeated {count} more times]" by both the traceback module and the builtin traceback rendering. Patch by Emanuel Barry.
* | Issue #27336: Fix compilation failures --without-threadsBerker Peksag2016-06-171-1/+1
| |
* | Rework _Py_DumpASCII() to make Coverity happyVictor Stinner2016-03-231-8/+8
| |
* | Issue #23848: Expose _Py_DumpHexadecimal()Victor Stinner2016-03-231-8/+9
| | | | | | | | This function will be reused by faulthandler.
* | faulthandler now works in non-Python threadsVictor Stinner2016-03-161-2/+47
| | | | | | | | | | | | | | | | | | | | | | Issue #26563: * Add _PyGILState_GetInterpreterStateUnsafe() function: the single PyInterpreterState used by this process' GILState implementation. * Enhance _Py_DumpTracebackThreads() to retrieve the interpreter state from autoInterpreterState in last resort. The function now accepts NULL for interp and current_tstate parameters. * test_faulthandler: fix a ResourceWarning when test is interrupted by CTRL+c
* | Fix compilation error of traceback.c on WindowsVictor Stinner2016-03-161-3/+3
| | | | | | | | Issue #26564.
* | Enhance and rewrite traceback dump C functionsVictor Stinner2016-03-151-53/+56
|/ | | | | | | | | | | | | Issue #26564: * Expose _Py_DumpASCII() and _Py_DumpDecimal() in traceback.h * Change the type of the second _Py_DumpASCII() parameter from int to unsigned long * Rewrite _Py_DumpDecimal() and dump_hexadecimal() to write directly characters in the expected order, avoid the need of reversing the string. * dump_hexadecimal() limits width to the size of the buffer * _Py_DumpASCII() does nothing if the object is not a Unicode string * dump_frame() wrtites "???" as the line number if the line number is negative
* Issue #24436: Added const qualifiers for char* arguments of _PyTraceback_Add.Serhiy Storchaka2015-06-211-1/+1
|\ | | | | | | Patch by Michael Ensslin.
| * Issue #24436: Added const qualifiers for char* arguments of _PyTraceback_Add.Serhiy Storchaka2015-06-211-1/+1
| | | | | | | | Patch by Michael Ensslin.
* | Issue #23524: Replace _PyVerify_fd function with calls to ↵Steve Dower2015-04-121-0/+2
| | | | | | | | _set_thread_local_invalid_parameter_handler.
* | Issue #23836: Use _Py_write_noraise() to retry on EINTR in _Py_DumpTraceback()Victor Stinner2015-04-011-8/+20
| | | | | | | | | | and _Py_DumpTracebackThreads(). Document also these functions to explain that the caller is responsible to call PyErr_CheckSignals().
* | Merge 3.4 (traceback)Victor Stinner2015-03-251-1/+8
|\ \ | |/
| * Issue #23571: If io.TextIOWrapper constructor fails in _Py_DisplaySourceLine(),Victor Stinner2015-03-251-1/+8
| | | | | | | | close the binary file to fix a resource warning.
* | (Merge 3.4) Issue #22762: Fix _Py_DisplaySourceLine(), clear the exception ifVictor Stinner2014-10-301-0/+1
|\ \ | |/ | | | | PyFile_GetLine() failed. Patch written by Xavier de Gaye.
| * Issue #22762: Fix _Py_DisplaySourceLine(), clear the exception ifVictor Stinner2014-10-301-0/+1
| | | | | | | | PyFile_GetLine() failed. Patch written by Xavier de Gaye.
* | Issue #22462: Fix pyexpat's creation of a dummy frame to make it appear in ↵Antoine Pitrou2014-10-081-0/+33
|\ \ | |/ | | | | | | | | exception tracebacks. Initial patch by Mark Shannon.
| * Issue #22462: Fix pyexpat's creation of a dummy frame to make it appear in ↵Antoine Pitrou2014-10-081-0/+33
| | | | | | | | | | | | exception tracebacks. Initial patch by Mark Shannon.
* | faulthandler: enhance dump_ascii() to escape also non-printable ASCIIVictor Stinner2014-10-031-4/+5
| | | | | | | | characters (U+0000..U+001f and U+007f).
* | Issue #22156: Fix "comparison between signed and unsigned integers" compilerVictor Stinner2014-08-151-1/+1
|/ | | | warnings in the Python/ subdirectory.
* Fix _Py_DisplaySourceLine(), if PyTokenizer_FindEncodingFilename() fails, clearVictor Stinner2013-12-191-0/+2
| | | | the exception to not call open() with an exception set.
* Issue #19512, #19515: remove shared identifiers, move identifiers where theyVictor Stinner2013-11-071-5/+6
| | | | | | | 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.
* Issue 19306: Add extra hints to faulthandler stack dumps that they are ↵Guido van Rossum2013-10-201-8/+8
| | | | upside down.
* merge 3.3Benjamin Peterson2013-07-211-1/+1
|\
| * fix spacingBenjamin Peterson2013-07-211-1/+1
| |
* | merge 3.3Benjamin Peterson2013-07-211-2/+2
|\ \ | |/
| * let's not return NULL from functions that should return intsBenjamin Peterson2013-07-211-2/+2
| |
* | Check return value of lseek() in _Py_DisplaySourceLine().Christian Heimes2013-07-211-1/+7
|\ \ | |/ | | | | | | Also use portable SEEK_SET instead of 0. CID 1040639
| * Check return value of lseek() in _Py_DisplaySourceLine().Christian Heimes2013-07-211-1/+7
| | | | | | | | | | Also use portable SEEK_SET instead of 0. CID 1040639
* | Check return value of PyObject_AsFileDescriptor() in _Py_DisplaySourceLine() ↵Christian Heimes2013-07-211-0/+5
|\ \ | |/ | | | | | | | | for error CID 486768
| * Check return value of PyObject_AsFileDescriptor() in _Py_DisplaySourceLine() ↵Christian Heimes2013-07-211-0/+5
| | | | | | | | | | | | for error CID 486768
* | Issue #18408: Fix _Py_DisplaySourceLine()Victor Stinner2013-07-161-1/+3
| | | | | | | | | | Report _Py_FindSourceFile() error, so the error is cleared; and clear io.open(filename) exception on failure.
* | Fix compilater warnings on Windows 64-bitVictor Stinner2013-05-171-1/+1
|/
* Issue #15463: the faulthandler module truncates strings to 500 characters,Victor Stinner2012-07-301-1/+1
| | | | instead of 100, to be able to display long file paths
* Issue #15365: Make traceback reporting ignore any errors when printing outKristján Valur Jónsson2012-07-191-1/+4
| | | | | the source line. Such errors can't be reported anyway. This makes error reporting work, even if the "io" module can't be loaded.
* Remove "#ifdef Py_UNICODE_WIDE": Python is now always wideVictor Stinner2011-11-221-8/+2
|
* Rename _Py_identifier to _Py_IDENTIFIER.Martin v. Löwis2011-10-141-4/+4
|
* Issue #13088: Add shared Py_hexdigits constant to format a number into base 16Victor Stinner2011-10-141-2/+1
|
* Add API for static strings, primarily good for identifiers.Martin v. Löwis2011-10-091-4/+8
| | | | Thanks to Konrad Schöbel and Jasper Schulz for helping with the mass-editing.
* traceback: fix dump_ascii() for string with kind=PyUnicode_WCHAR_KINDVictor Stinner2011-10-051-3/+13
|
* Implement PEP 393.Martin v. Löwis2011-09-281-22/+39
|