Guido van Rossum
124eff0225
Patch by Tim Peters to improve the range checks for range() and
...
xrange(), especially for platforms where int and long are different
sizes (so sys.maxint isn't actually the theoretical limit for the
length of a list, but the largest C int is -- sys.maxint is the
largest Python int, which is actually a C long).
1999-02-23 16:11:01 +00:00
Guido van Rossum
66368ccc55
Patch by Tommy Burnette to accept an arbitrary sequence when "(...)"
...
is used in the format string, instead of requiring a tuple. This is
in line with the general trend towards accepting arbitrary sequences.
1999-02-17 23:16:43 +00:00
Barry Warsaw
3d05b1a0ae
initmain(): Nailed a memory leak. bimod must be DECREF'd!
1999-01-29 21:30:22 +00:00
Barry Warsaw
7890203f49
bltin_exc[]: EnvironmentError is not a "leaf exception", so set it's
...
leaf_exc flag to zero otherwise the name leaks memory.
1999-01-29 20:29:49 +00:00
Barry Warsaw
fa77e09dd0
builtin_map(): A better fix for the previous leak plug (remember
...
PyList_Append steals a reference even if it fails).
builtin_filter(): Had the same leak problem as builtin_map().
1999-01-28 18:49:12 +00:00
Guido van Rossum
541563ec7e
Implement -OO; "unsafe" optimization that removes docstrings.
...
Marc-Andre Lemburg.
1999-01-28 15:08:09 +00:00
Barry Warsaw
2133287c3e
builtin_map(): Nailed memory leak. PyList_Append() borrows a
...
reference, so you have to DECREF the appended value. This was a fun
one!
1999-01-28 04:21:35 +00:00
Barry Warsaw
f988e687a1
builtin_complex(): Nailed memory leak. This one's in the instance
...
test for classes with a __complex__() method. The attribute is pulled
out of the instance with PyObject_GetAttr() but this transfers
ownership and the function object was never DECREF'd.
1999-01-27 23:13:59 +00:00
Barry Warsaw
3879333b9e
PyImport_ReloadModule(): Nailed a small memory leak. In the
...
else-clause of the subname test, the parentname object was never
DECREF'd.
1999-01-27 17:54:20 +00:00
Guido van Rossum
54ecc3d24f
Patches by William Lewis for Nextstep descendants.
1999-01-27 17:53:11 +00:00
Barry Warsaw
c80baa3365
err_input(): Nailed a small memory leak. If the error is E_INTR, the
...
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.
1999-01-27 16:39:40 +00:00
Barry Warsaw
54892c4b2c
_PySys_Init(): Nailed small memory leak. The stringobject created for
...
sys.version was missing a Py_XDECREF().
1999-01-27 16:33:19 +00:00
Guido van Rossum
3dbba6ec3a
Change rare occurrences of #if HAVE_LONG_LONG to #ifdef.
1999-01-25 21:48:56 +00:00
Guido van Rossum
a71b5f4e1d
Jim Ahlstrom patch: the module doc string is too long for 16-bit VC
...
1.5. Omit the second part.
1999-01-14 19:07:00 +00:00
Guido van Rossum
e23cde2f8d
Avoid overflow if possible in calculations for range(); report
...
unavoidable overflow as OverflowError.
1999-01-12 05:07:47 +00:00
Guido van Rossum
2c1f6be38e
Hack for Windows so that if (1) the exit status is nonzero and (2) we
...
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...
1999-01-08 15:56:28 +00:00
Guido van Rossum
df69365f5f
Ty Sarna writes:
...
The following patches (relative to 1.5.2b1) enable Python dynamic
loading to work on NetBSD platforms that use ELF (presnetly mips and
alpha systems). They automaticly determine wether the system is ELF or
a.out rather than using astatic list of platforms so that when other
NetBSD platforms move to ELF, python will continue to work without
change.
1999-01-07 21:50:41 +00:00
Guido van Rossum
cad3d47f1e
Chris Herborth writes:
...
Donn Cave tells me the PyImport_BeImageID() function isn't needed anymore.
1999-01-04 16:45:59 +00:00
Guido van Rossum
e0d7dae3b8
Add sys.hexversion, which is an integer encoding the version in hexadecimal.
...
In other words, hex(sys.hexversion) == 0x010502b2 for Python 1.5.2b2.
This is derived from the new variable PY_VERSION_HEX defined in patchlevel.h.
(Cute, eh?)
1999-01-03 12:55:39 +00:00
Guido van Rossum
6e0a3499ab
Use PY_VERSION instead of PATCHLEVEL.
1999-01-03 12:41:50 +00:00
Guido van Rossum
47ae028071
Call PyInitFrozenExtensions() as requested by Mark Hammond (his patch).
1999-01-02 21:42:48 +00:00
Guido van Rossum
c38e7d4c4b
Oops, forgot a pair of {}'s. (Greg Couch)
1998-12-23 19:53:45 +00:00
Guido van Rossum
d341500d8f
Add 'N' format character to Py_BuildValue -- like 'O' but doesn't INCREF.
...
Patch and suggestion by Greg Couch.
1998-12-23 05:01:38 +00:00
Guido van Rossum
6058eb49ee
Improve comment for PyImport_Import() as suggested by Bill Tutt.
1998-12-21 19:51:00 +00:00
Guido van Rossum
65d5b5763c
Thanks to Chris Herborth, the thread primitives now have proper Py*
...
names in the source code (they already had those for the linker,
through some smart macros; but the source still had the old, un-Py names).
1998-12-21 19:32:43 +00:00
Guido van Rossum
885553e8d3
Use PyThreadState_GET() macro.
1998-12-21 18:33:30 +00:00
Guido van Rossum
18bc7c2276
Make current_tstate a global, _PyThreadState_Current. This is to
...
support a macro in pystate.h.
1998-12-21 18:27:28 +00:00
Guido van Rossum
1924a0677d
Chris H. writes:
...
If we're going to put the PyOS_strtol() proto in intobject.h we should
include it here or the symbol isn't exported on PowerPC.
1998-12-18 22:02:37 +00:00
Guido van Rossum
0e1d0e95ea
Patch by Chris Herborth:
...
have to use a const-correct prototype on BeOS or the compiler gets uppity.
1998-12-17 18:03:10 +00:00
Guido van Rossum
2edcf0d71c
Move the prototype for dump_counts() to before where it is used.
...
(This only applies when COUNT_ALLOCS is defined.)
1998-12-15 16:12:00 +00:00
Guido van Rossum
46e9705eca
Remove prototypes for PyOS_strto[u]l -- Chris Herborth.
1998-12-10 16:57:44 +00:00
Guido van Rossum
ca90605678
Add more SET_LINENO instructions in long argument lists
1998-12-10 16:56:22 +00:00
Guido van Rossum
926f7b6615
Adding thread support for BeOS by Chris Herborth.
1998-12-07 21:56:59 +00:00
Guido van Rossum
cf183acf15
Use PyInt_AS_LONG macro instead of explicit inlining.
1998-12-04 18:51:36 +00:00
Guido van Rossum
f261526423
Need to add default decl of DL_IMPORT, for mymalloc.h
1998-12-04 18:50:20 +00:00
Barry Warsaw
344864fcfb
Added new builtin standard exception: NotImplementedError (its C
...
counterpart is PyExc_NotImplementedError).
1998-12-01 18:52:06 +00:00
Guido van Rossum
df12a59305
Fix cosmetic bug in delattr docstring discovered by JvR.
1998-11-23 22:13:04 +00:00
Guido van Rossum
014518f66c
Whoops! One the "redundant" initializations removed by Vladimir in
...
the previous patch wasn't -- there was a path through the code that
bypassed all initializations. Thanks to Just for reporting the bug!
1998-11-23 21:09:51 +00:00
Guido van Rossum
50cd34888b
Remove some redundant initializations -- patch by Vladimir Marangozov.
1998-11-17 17:02:51 +00:00
Guido van Rossum
66468568df
Jim Fulton writes:
...
"""
I had originally not realized that PyEval_GetGlobals did not
INCREF it's return value. The fix is to add the INCREF,
as shown below.
"""
1998-10-22 15:46:50 +00:00
Guido van Rossum
e0e59829e0
When errno is zero, avoid calling strerror() and use "Error" for the
...
message.
1998-10-14 20:38:13 +00:00
Guido van Rossum
2f3667a7b9
Replace fprintf(stderr, ...) with PySys_WriteStderr(...).
1998-10-12 18:23:55 +00:00
Guido van Rossum
8442af35fe
Patches for mywrite() by Marc Lemburg: save/restore the error state
...
reliably; check return value of vsprintf().
1998-10-12 18:22:10 +00:00
Guido van Rossum
b317f8aa0d
Implement new format character 't#'. This is like s#, accepting an
...
object that implements the buffer interface, but requires a buffer
that contains 8-bit character data. Greg Stein.
1998-10-08 02:21:21 +00:00
Guido van Rossum
5bd893b1ea
The previous checkin contained an experiment of Greg Stein's that wasn't
...
meant for checkin, and which broke marshal.loads().
1998-10-08 01:45:47 +00:00
Guido van Rossum
0f8b30f8ce
On Win32, use
...
LoadLibraryEx(pathname, NULL, LOAD_WITH_ALTERED_SEARCH_PATH)
to search dependent DLLs in the directory of the pathname.
1998-10-08 01:44:41 +00:00
Guido van Rossum
2a570049ac
Changes to deal with the sigcheck+intrcheck vs. signalmodule controversy.
1998-10-07 22:51:56 +00:00
Guido van Rossum
d076c73cc8
Changes to support other object types besides strings
...
as the code string of code objects, as long as they support
the (readonly) buffer interface. By Greg Stein.
1998-10-07 19:42:25 +00:00
Guido van Rossum
9e46e56264
BSDI specific patches, inspired by Nigel Head and otto@mail.olympus.net.
...
Also (non-BSDI specific):
- Change the CHECK_STATUS() macro so it tests for nonzero error codes
instead of negative error codes only (this was needed for BSDI, but
appears to be correct according to the PTHREADS spec).
- use memset() to zero out the allocated lock structure. Again, this
was needed for BSDI, but can't hurt elsewhere either.
1998-10-07 16:39:47 +00:00
Guido van Rossum
562f5b1480
Support PYTHONOPTIMIZE variable; by Marc Lemburg.
1998-10-07 14:50:42 +00:00