| Commit message (Collapse) | Author | Age | Files | Lines | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
They're named as if public, so I did a Bad Thing by changing
PyMarshal_ReadObjectFromFile() to suck up the remainder of the file in one
gulp:  anyone who counted on that leaving the file pointer merely at the
end of the next object would be screwed.  So restored
PyMarshal_ReadObjectFromFile() to its earlier state, renamed the new greedy
code to PyMarshal_ReadLastObjectFromFile(), and changed Python internals to
call the latter instead.
 | 
| | 
| 
| 
| 
| 
| 
| 
|  | 
pythonrun.c:  In Py_Finalize, don't reset the initialized flag until after
the exit funcs have run.
atexit.py:  in _run_exitfuncs, mutate the list of pending calls in a
threadsafe way.  This wasn't a contributor to bug 128475, it just burned
my eyeballs when looking at that bug.
 | 
| |  | 
 | 
| | 
| 
| 
|  | 
has type int in C.
 | 
| | 
| 
| 
|  | 
Patch #103067 with modifications as discussed in email.
 | 
| | 
| 
| 
|  | 
sigaction() (if HAVE_SIGACTION is defined).
 | 
| | 
| 
| 
|  | 
This should match the situation in the 1.6b1 tree.
 | 
| |  | 
 | 
| |  | 
 | 
| |  | 
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
PyRun_FileEx().  These are the same as their non-Ex counterparts but
have an extra argument, a flag telling them to close the file when
done.
Then this is used by Py_Main() and execfile() to close the file after
it is parsed but before it is executed.
Adding APIs seems strange given the feature freeze but it's the only
way I see to close the bug report without incompatible changes.
[ Bug #110616 ] source file stays open after parsing is done (PR#209)
 | 
| | 
| 
| 
| 
| 
|  | 
couple of potential stack overflows, including bug #110615.
closes patch #101238
 | 
| |  | 
 | 
| | 
| 
| 
|  | 
my last set of changes.
 | 
| | 
| 
| 
| 
| 
| 
| 
|  | 
filename and lineno attributes, but do not mask the SyntaxError if we
fail.
This is part of what is needed to close SoruceForge bug #110628
(Jitterbug PR#278).
 | 
| | 
| 
| 
|  | 
declarations yet, those come later.
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
comments, docstrings or error messages. I fixed two minor things in
test_winreg.py ("didn't" -> "Didn't" and "Didnt" -> "Didn't").
There is a minor style issue involved: Guido seems to have preferred English
grammar (behaviour, honour) in a couple places. This patch changes that to
American, which is the more prominent style in the source. I prefer English
myself, so if English is preferred, I'd be happy to supply a patch myself ;)
 | 
| | 
| 
| 
|  | 
mac-specific functions to have a PyMac_ name.
 | 
| | 
| 
| 
| 
| 
| 
|  | 
used for indentation related errors.  This patch includes Ping's
improvements for indentation-related error messages.
Closes SourceForge patches #100734 and #100856.
 | 
| |  | 
 | 
| |  | 
 | 
| |  | 
 | 
| | 
| 
| 
| 
| 
|  | 
the number of children of a node exceeds the max possible value for
the short that is used to count them.  The Python runtime converts
this parser error into the SyntaxError "expression too long."
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
need two phase init or fini of the builtin module.  Change the call of
_PyBuiltin_Init_1() to _PyBuiltin_Init().  Add a call to
init_exceptions().
Py_Finalize(): Don't call _PyBuiltin_Fini_1().  Instead call
fini_exceptions() but move this to before the thread state is
cleared.
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
For more comments, read the patches@python.org archives.
For documentation read the comments in mymalloc.h and objimpl.h.
(This is not exactly what Vladimir posted to the patches list; I've
made a few changes, and Vladimir sent me a fix in private email for a
problem that only occurs in debug mode.  I'm also holding back on his
change to main.c, which seems unnecessary to me.)
 | 
| | 
| 
| 
|  | 
API consistency, but nothing sets it or checks it now.
 | 
| | 
| 
| 
|  | 
Added Py_UnicodeFlag for use by the -U command line option.
 | 
| | 
| 
| 
| 
| 
|  | 
remaining object references if the environment variable PYTHONDUMPREFS
exists.  The default behaviour caused problems for background or
otherwise invisible processes that use the debug build of Python.
 | 
| | 
| 
| 
| 
|  | 
Note that comparisons of deeply nested objects can still dump core in
extreme cases.
 | 
| | 
| 
| 
|  | 
Codec registry.
 | 
| | 
| 
| 
|  | 
compilation on NT Alpha.  Mostly added casts etc.
 | 
| | 
| 
| 
| 
|  | 
done by _PyImport_Init(), comes to late to affect the import of
exceptions.py by _PyBuiltin_Init_2().  Move  _PyImport_Init() up few lines.
 | 
| | 
| 
| 
| 
|  | 
before exiting when an error happened.  This didn't work right when
Python is invoked from a daemon.
 | 
| |  | 
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
|  | 
v temporary variable was never decref'd.  Test this by starting up the
interpreter, hitting C-c, then immediately exiting.
Same potential leak can occur if error is E_NOMEM, since the return is
done in the case block.  Added Py_XDECREF(v); to both blocks, just
before the return.
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
|  | 
think we have our own DOS box (i.e. we're not started from a command
line shell), we print a message and wait for the user to hit a key
before the DOS box is closed.
The hacky heuristic for determining whether we have our *own* DOS box
(due to Mark Hammond) is to test whether we're on line zero...
 | 
| | 
| 
| 
|  | 
(This only applies when COUNT_ALLOCS is defined.)
 | 
| |  | 
 | 
| |  | 
 | 
| | 
| 
| 
| 
|  | 
pystate.h; pystate.h doesn't use it (I thought I wanted to move the
array there but that won't work).
 | 
| | 
| 
| 
|  | 
(Reported by Jeff Rush.)
 | 
| | 
| 
| 
|  | 
It is needed so that tokenizer.c can use PySys_WriteStderr().
 | 
| | 
| 
| 
|  | 
Win32 in Debug mode).
 | 
| |  | 
 | 
| | 
| 
| 
|  | 
and not to C's stderr.
 | 
| | 
| 
| 
|  | 
(Basically, the error is cleared...  Like almost everywhere else...)
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
- Add Py_FrozenFlag, intended to suppress error messages fron
getpath.c in frozen binaries.
- Add Py_GetPythonHome() and Py_SetPythonHome(), intended to allow
embedders to force a different PYTHONHOME.
- Add new interface PyErr_PrintEx(flag); same as PyErr_Print() but
flag determines whether sys.last_* are set or not.  PyErr_Print()
now simply calls PyErr_PrintEx(1).
 | 
| | 
| 
| 
|  | 
to do, it should not call sys.exitfunc either...
 | 
| | 
| 
| 
| 
|  | 
printing (when Py_DEBUG is defined) happens while there's still a
current thread...
 | 
| | 
| 
| 
| 
|  | 
you can assign an object whose str() evaluates to the current
directory (or whatever).
 |