Commit Graph

5166 Commits

Author SHA1 Message Date
Georg Brandl 944f684ce6 Allow multiple context managers in one with statement, as proposed
in http://codereview.appspot.com/53094 and accepted by Guido.

The construct is transformed into multiple With AST nodes so that
there should be no problems with the semantics.
2009-05-25 21:02:56 +00:00
Benjamin Peterson 7285a2666e fix error handling 2009-05-25 20:13:36 +00:00
Collin Winter 179bf213ea Issue 5670: special-case pickling of dicts. This nearly doubles the performance of dict pickling in cPickle. 2009-05-25 04:34:39 +00:00
Benjamin Peterson a7724e59e0 stop using Py_FindMethod 2009-05-24 23:13:32 +00:00
Antoine Pitrou d49e375eed Issue #1309352: fcntl now converts its third arguments to a C `long` rather
than an int, which makes some operations possible under 64-bit Linux (e.g.
DN_MULTISHOT with F_NOTIFY).
2009-05-24 15:40:09 +00:00
Antoine Pitrou 4fe3858991 Fix build under Windows 2009-05-24 12:15:04 +00:00
Benjamin Peterson e5afa3b24b support building with subversion 1.7 #6094 2009-05-23 19:24:37 +00:00
Antoine Pitrou 76dd2d1459 Some pid_t-expecting or producing functions were forgotten in r72852. 2009-05-23 16:06:49 +00:00
Antoine Pitrou 5e858fe52b Issue #1983: Fix functions taking or returning a process identifier to use
the dedicated C type `pid_t` instead of a C `int`. Some platforms have
a process identifier type wider than the standard C integer type.
2009-05-23 15:37:45 +00:00
Mark Dickinson cf4ad76a0a typos in ctypes Module 2009-05-20 17:55:31 +00:00
Hirokazu Yamamoto b24bb27d22 Issue #3527: Removed Py_WIN_WIDE_FILENAMES which is not used any more. 2009-05-17 02:52:09 +00:00
Antoine Pitrou 42b5bcf048 Issue #5918: Fix a crash in the parser module.
Patch by Amaury.
2009-05-14 21:48:09 +00:00
Jeffrey Yasskin 1aa4700234 PyCode_NewEmpty:
Most uses of PyCode_New found by http://www.google.com/codesearch?q=PyCode_New
are trying to build an empty code object, usually to put it in a dummy frame
object. This patch adds a PyCode_NewEmpty wrapper which lets the user specify
just the filename, function name, and first line number, instead of also
requiring lots of code internals.
2009-05-08 21:51:06 +00:00
Mark Dickinson 083d1f9f9a Issue #5933: Fix gcc -Wextra compiler warnings (and remove some
trailing whitespace).
2009-05-08 20:58:08 +00:00
Thomas Heller fd1ee7a8a0 Add a file that contains diffs between offical libffi files and the
files in this repository.  Should make it easier to merge new libffi
versions.
2009-05-08 20:09:40 +00:00
Walter Dörwald a7fb408a02 Issue 3739: The unicode-internal encoder now reports the number of *characters*
consumed like any other encoder (instead of the number of bytes).
2009-05-06 14:28:24 +00:00
Benjamin Peterson c6c1f96420 tabify :( 2009-05-05 23:00:48 +00:00
Benjamin Peterson a98c8e1d2d fix running test_capi with -R ::
Also, fix a refleak in the test that was preventing running. :)
2009-05-05 21:09:21 +00:00
Mark Dickinson 929ab93489 Issue #5933: Fix some gcc -Wextra warnings. Thanks Victor Stinner for
the patch.
2009-05-05 17:41:47 +00:00
Georg Brandl f71ba95e91 #5932: fix error return in _convertPyInt_AsSsize_t() conversion function. 2009-05-05 07:48:12 +00:00
Hirokazu Yamamoto 406d7aaee7 Issue #5913: os.listdir() should fail for empty path on windows. 2009-05-04 05:28:39 +00:00
Gregory P. Smith eeb51a99c5 cleanup applied patch to match style that is already in py3k branch. 2009-05-04 00:48:41 +00:00
Gregory P. Smith d02eedacab Issue #4751: For hashlib algorithms provided by OpenSSL, the Python
GIL is now released during computation on data lengths >= 2048 bytes.
2009-05-04 00:16:49 +00:00
Antoine Pitrou 7430989cda Isue #5084: unpickling now interns the attribute names of pickled objects,
saving memory and avoiding growth in size of subsequent pickles. Proposal
and original patch by Jake McGuire.
2009-05-02 21:13:23 +00:00
Antoine Pitrou 3fd4ea9dab Issue #5726: Make Modules/ld_so_aix return the actual exit code of the linker, rather than always exit successfully.
Patch by Floris Bruynooghe.
2009-05-01 21:16:14 +00:00
Thomas Heller 90c61a2e09 Issue #4305: ctypes fails to build on mipsel-linux-gnu (detects mips
instead of mipsel)
2009-04-28 19:23:41 +00:00
Antoine Pitrou e988e286b2 Issue #1734234: Massively speedup `unicodedata.normalize()` when the
string is already in normalized form, by performing a quick check beforehand.
Original patch by Rauli Ruohonen.
2009-04-27 21:53:26 +00:00
Eric Smith 068f06568b Issue #5835, deprecate PyOS_ascii_formatd.
If anyone wants to clean up the documentation, feel free. It's my first documentation foray, and it's not that great.

Will port to py3k with a different strategy.
2009-04-25 21:40:15 +00:00
Thomas Heller e09f161618 Issue #5078: Avoid redundant call to FormatError() 2009-04-25 16:37:18 +00:00
Thomas Heller 5c6af808f7 Issue #3102: All global symbols that the _ctypes extension defines are
now prefixed with 'Py' or '_ctypes'.
2009-04-24 20:31:47 +00:00
Thomas Heller ec21ccde12 Issue 5041: ctypes unwilling to allow pickling wide character. 2009-04-24 20:00:41 +00:00
Thomas Heller 2d69358802 Remove duplicated function declaration.
Make _pagesize static.
2009-04-16 06:42:02 +00:00
Thomas Heller 4954ffd98d Remove unneeded code. 2009-04-16 06:26:33 +00:00
Georg Brandl 3c4a5463b2 #5704: let python -3 imply -t as well. 2009-04-12 12:08:12 +00:00
Gregory P. Smith 6d30793cf2 Fixes issue5705: os.setuid() and friends did not accept the same range of
values that pwd.getpwnam() returns.
2009-04-05 23:43:58 +00:00
Matthias Klose 91a3b9e4f0 Issue #1113244: Py_XINCREF, Py_DECREF, Py_XDECREF: Add `do { ... } while (0)'
to avoid compiler warnings.
2009-04-05 21:19:13 +00:00
Georg Brandl d3eaa745a9 #5615: make it possible to configure --without-threads again. 2009-04-05 11:07:14 +00:00
Guilherme Polo 5d64c330dd Include tkinter.h only after including tk.h (or the equivalent for another platform). 2009-04-05 02:11:19 +00:00
Jesse Noller 5053fbbb38 Issue 3551: Raise ValueError if the size causes ERROR_NO_SYSTEM_RESOURCES 2009-04-02 04:22:09 +00:00
Jesse Noller b502bc7a1a Issue 3110: Additional protection for SEM_VALUE_MAX on platforms, thanks to Martin Loewis 2009-04-02 02:32:55 +00:00
Jesse Noller 355b1264b8 issue5545: Switch to Autoconf for multiprocessing; special thanks to Martin Lowis for help 2009-04-02 00:03:28 +00:00
Jack Diederich 2ecd3c36b5 bounds check arguments to mmap.move(). All of them. Really.
fixes crasher on OS X 10.5
2009-04-01 20:26:13 +00:00
Kristján Valur Jónsson feab33418d http://bugs.python.org/issue5623
Dynamically discoverd the size of the ioinfo struct used by the crt for its file descriptors.  This should work across all flavors of the CRT.  Thanks to Amaury Forgeot d'Arc
Needs porting to 3.1
2009-04-01 16:08:34 +00:00
Hirokazu Yamamoto c53306c217 Fixed compile error on windows. 2009-04-01 15:13:52 +00:00
Jack Diederich d60c29ed8b #5228: add pickle support to functools.partial 2009-03-31 23:46:48 +00:00
Jesse Noller 42f9b4e5b4 Issue 5619: Pass MS CRT debug flags into subprocesses 2009-03-31 22:20:35 +00:00
Hirokazu Yamamoto 1d7d5325be Issue #5387: Fixed mmap.move crash by integer overflow. (take2) 2009-03-31 20:14:04 +00:00
Jesse Noller 40a6164afa Apply patch for netbsd multiprocessing support 2009-03-31 18:12:35 +00:00
Hirokazu Yamamoto 9d2ee5ded2 Issue #5387: Fixed mmap.move crash by integer overflow. 2009-03-31 13:13:05 +00:00
Jesse Noller 82eb5902ce merge in patch from tim golden to fix contextmanager support for mp.Lock() 2009-03-30 23:29:31 +00:00
Bob Ippolito 76a982a027 Issue 5381: fix regression in pure python code path, Issue 5584: fix a decoder bug for unicode float literals outside of a container 2009-03-29 22:33:58 +00:00
Guilherme Polo 41eb08616c Typo fix 2009-03-28 19:17:16 +00:00
Guilherme Polo 1972d16230 Adjusted _tkinter to compile without warnings when WITH_THREAD is not
defined (part of issue #5035)
2009-03-27 21:43:08 +00:00
Antoine Pitrou f8387af262 Issue #4688: Add a heuristic so that tuples and dicts containing only
untrackable objects are not tracked by the garbage collector. This can
reduce the size of collections and therefore the garbage collection overhead
on long-running programs, depending on their particular use of datatypes.

(trivia: this makes the "binary_trees" benchmark from the Computer Language
Shootout 40% faster)
2009-03-23 18:41:45 +00:00
Raymond Hettinger a0b8d9ad2d Silence a compiler warning. 2009-03-19 19:24:43 +00:00
Raymond Hettinger 91852ca673 Issue 5381: Add object_pairs_hook to the json module. 2009-03-19 19:19:03 +00:00
Mark Dickinson 6b265f1bf8 Issue 4474: On platforms with sizeof(wchar_t) == 4 and
sizeof(Py_UNICODE) == 2, PyUnicode_FromWideChar now converts
each character outside the BMP to the appropriate surrogate pair.

Thanks Victor Stinner for the patch.

(backport of r70452 from py3k to trunk)
2009-03-18 16:07:26 +00:00
Bob Ippolito d914e3f861 merge json library with simplejson 2.0.9 (issue 4136) 2009-03-17 23:19:00 +00:00
Georg Brandl 4c95e091d6 #5496: fix docstring of lookup(). 2009-03-15 21:32:06 +00:00
Raymond Hettinger 56411aac79 For collections.deque() objects, expose the maxlen parameter as a read-only attribute. 2009-03-10 12:50:59 +00:00
Raymond Hettinger bac769bb5e Small optimization for corner case where maxlen==0. 2009-03-10 09:31:48 +00:00
Guilherme Polo 3768b2f4ce Fixed issue #4792: Prevent a segfault in _tkinter by using the
guaranteed to be safe interp argument given to the PythonCmd in place
of the Tcl interpreter taken from a PythonCmd_ClientData.
2009-03-07 01:47:49 +00:00
Hirokazu Yamamoto 264fc12fbf Issue #5385: Fixed mmap crash after resize failure on windows.
Now uses NULL instead of INVALID_HANDLE_VALUE as invalid map handle
because CreateFileMapping returns NULL when error occurs.
2009-03-05 14:21:12 +00:00
Hirokazu Yamamoto 8355155f22 Fixed memory leak. 2009-03-03 22:05:57 +00:00
Kristján Valur Jónsson 7705d0aaaf Fix SHA_new and MD5_new, that would crash if not given initial data 2009-03-03 03:20:42 +00:00
Mark Dickinson de28d6841e Issue #5393: typo in cmath.cos and cmath.cosh docstring 2009-02-28 15:50:40 +00:00
Hirokazu Yamamoto b0e10c760c Issue #1733986: Fixed mmap crash in accessing elements of second map object
with same tagname but larger size than first map. (Windows)
2009-02-28 12:13:07 +00:00
Hirokazu Yamamoto f2dc885780 Issue #5386: mmap.write_byte didn't check map size, so it could cause buffer
overrun.
2009-02-28 10:31:54 +00:00
Benjamin Peterson 873389dbd8 fix compiler warnings 2009-02-21 23:09:33 +00:00
Mark Dickinson 3e4caeb3bf Issue #5341: Fix a variety of spelling errors. 2009-02-21 20:27:01 +00:00
Raymond Hettinger aa681c7b99 Fix keyword arguments for itertools.count().
Step arg without a start arg was ignored.
2009-02-21 07:17:22 +00:00
Raymond Hettinger 182edaefb5 Add keyword arg support to itertools.repeat(). 2009-02-19 02:38:25 +00:00
Raymond Hettinger 2e2909f584 Add keyword arg support to itertools.compress(). 2009-02-19 02:15:14 +00:00
Raymond Hettinger 08259e8f25 Py3k warnings now automatically include -Qwarn for division. 2009-02-18 23:10:19 +00:00
Hirokazu Yamamoto 17a837e4db Issue #5282: Fixed mmap resize on 32bit windows and unix. When offset > 0,
The file was resized to wrong size.
2009-02-17 13:17:26 +00:00
Hirokazu Yamamoto f6bbd0e71d Issue #5292: Fixed mmap crash on its boundary access m[len(m)]. 2009-02-17 10:12:10 +00:00
Benjamin Peterson a7b0c12152 PyList_Append() can fail 2009-02-16 21:23:04 +00:00
Benjamin Peterson 062a7c3675 fix compiler warnings 2009-02-16 21:07:52 +00:00
Raymond Hettinger b21d8109af Add GC support to count() objects. Backport candidate. 2009-02-16 20:39:12 +00:00
Raymond Hettinger a4038038c6 Add keyword argument support to itertools.count(). 2009-02-14 00:25:51 +00:00
Georg Brandl 2c07929770 Fix warnings GCC emits where the argument of PyErr_Format is a single variable. 2009-02-13 11:10:04 +00:00
Gregory P. Smith ea38826ab2 - Issue #3745: Fix hashlib to always reject unicode and non buffer-api
supporting objects as input no matter how it was compiled (built in
  implementations or external openssl library).
(backported from a py3k branch)
2009-02-13 03:00:00 +00:00
Raymond Hettinger 66373ab888 Fix spaces/tabs in example. 2009-02-12 10:16:19 +00:00
Raymond Hettinger 31c769ca89 Issue 5032: added a step argument to itertools.count() and allowed non-integer arguments. 2009-02-12 05:39:46 +00:00
Gregory P. Smith 3605b5cee3 Issue #1008086: Fixes socket.inet_aton() to always return 4 bytes even
on LP64 platforms (most 64-bit Linux, bsd, unix systems).
2009-02-11 23:45:25 +00:00
Thomas Heller 3689ae256e Issue#5203: ctypes segfaults when passing a unicode string to a
function without argtypes, if HAVE_USABLE_WCHAR_T is false.
2009-02-10 18:43:01 +00:00
Mark Dickinson 4015f62e39 Issue #5175: PyLong_AsUnsignedLongLong now raises OverflowError for
negative arguments.  Previously, it raised TypeError.

Thanks Lisandro Dalcin.
2009-02-10 15:46:50 +00:00
Kristján Valur Jónsson 6a743d3694 Issue 4804. Add a function to test the validity of file descriptors on Windows, and stop using global runtime settings to silence the warnings / assertions. 2009-02-10 13:32:24 +00:00
Guilherme Polo c5eba1e4f7 Enforcing Tk 8.3.1 requirement. 2009-02-09 20:57:45 +00:00
Guilherme Polo a66cf5bd04 Fixed issue #5122: Synchronize tk load failure check to prevent a
potential deadlock.
2009-02-09 20:50:27 +00:00
Raymond Hettinger 94034ea584 Issue 5171: itertools.product docstring missing 'repeat' argument 2009-02-09 18:39:41 +00:00
Nick Coghlan 0194f5bc98 Issue #4512 closeout: Make ZipImport.get_filename() a public method 2009-02-08 03:17:00 +00:00
Guilherme Polo 363161a418 Issue #1731706: Call Tcl_ConditionFinalize for Tcl_Conditions that will
not be used again (this requires Tcl/Tk 8.3.1), also fix a memory
leak in Tkapp_Call when calling from a thread different than the one that
created the Tcl interpreter.
2009-02-06 22:48:07 +00:00
Guilherme Polo 14ff18d211 Partial fix to issue #1731706: memory leak in Tkapp_Call when calling
from a thread different than the one that created the Tcl interpreter.
2009-02-06 22:26:22 +00:00
Kristján Valur Jónsson fd4c872726 issue 4804: Provide checks for the format string of strftime, and for the "mode" string of fopen on Windows. These strings are user provided from python and so we can avoid invoking the C runtime invalid parameter handler by first checking that they are valid. 2009-02-04 10:05:25 +00:00
Thomas Heller 7757d7bb51 This refactoring should make it easier to add new calling conventions.
Replace ffi_call_STDCALL and ffi_call_SYSV by a ffi_call_x86 function
that cleans up the stack when FFI_SYSV is used, and does nothing for
FFI_STDCALL.

Remove libffi_msvc\win32.S, which is out of date and also unused; it
was only used for building ctypes with the MingW compiler.
2009-02-03 17:07:40 +00:00
Guilherme Polo 23fe2a867b Fix for issue #1581476 2009-02-02 21:08:32 +00:00
Gregory P. Smith de1a8b720a - Issue #5104: The socket module now raises OverflowError when 16-bit port and
protocol numbers are supplied outside the allowed 0-65536 range on bind()
  and getservbyport().
2009-01-31 22:57:30 +00:00
Benjamin Peterson b3619be995 make _tkinter._flatten check the result of PySequence_Size for errors #3880 2009-01-30 02:24:39 +00:00
Raymond Hettinger e76816b146 Fix typo. 2009-01-29 03:43:44 +00:00
Raymond Hettinger 36d816b0ab Update itertools.__doc__ to include all tools. 2009-01-29 03:21:42 +00:00
Raymond Hettinger d081abc8be Promote combinations_with_replacement() from a recipe to a regular itertool. 2009-01-27 02:58:49 +00:00
Raymond Hettinger 354cfc1330 Fix signed/unsigned mismatch. 2009-01-26 16:52:22 +00:00
Raymond Hettinger 2bcb8e9b0d Promote compress() from a recipe to being a regular itertool. 2009-01-25 21:04:14 +00:00
Benjamin Peterson 78821ddf8c fix building the core with --disable-unicode
I changed some bytearray methods to use strings instead of unicode like bytes_repr
Also, bytearray.fromhex() can take strings as well as unicode
2009-01-25 17:15:10 +00:00
Mark Dickinson a3ecd2c668 Issue #1672332: Fix unpickling of subnormal floats, which was raising
ValueError on some platforms as a result of the platform strtod setting
errno on underflow.
2009-01-24 16:40:29 +00:00
Antoine Pitrou e741cc607c Issue #5008: When a file is opened in append mode with the new IO library,
do an explicit seek to the end of file (so that e.g. tell() returns the
file size rather than 0). This is consistent with the behaviour of the
traditional 2.x file object.
2009-01-21 00:45:36 +00:00
Benjamin Peterson 8024cece59 backport r68802 (bugfix) 2009-01-20 14:31:08 +00:00
Jesse Noller e8b619c152 issue 5002: fix windows warning that I intro'ed with r68768 2009-01-20 00:16:38 +00:00
Benjamin Peterson 943a6ddc72 simplify code 2009-01-19 15:51:27 +00:00
Jesse Noller 9a5b2ad38d Resolve issue 3321: (segfault) _multiprocessing.Connection() doesn't check handle 2009-01-19 15:12:22 +00:00
Kristján Valur Jónsson 2e659ce36f Issue 4957
Let os.ftruncate raise OSError like documented.
2009-01-19 13:10:27 +00:00
Benjamin Peterson 5848d1ff35 raise an OSError for invalid fds #4991 2009-01-19 00:08:08 +00:00
Amaury Forgeot d'Arc 59ce042766 #4077: No need to append \n when calling Py_FatalError
+ fix a declaration to make it match the one in pythonrun.h
2009-01-17 20:18:59 +00:00
Thomas Heller 3a6a0431d0 Fix refcount leak in error cases. Bug found by coverity. 2009-01-13 17:32:28 +00:00
Amaury Forgeot d'Arc a40d573664 #3720: Interpreter crashes when an evil iterator removes its own next function.
Now the slot is filled with a function that always raises.

Will not backport: extensions compiled with 2.6.x would not run on 2.6.0.
2009-01-12 23:36:55 +00:00
Antoine Pitrou b74fc2b5fe Issue #3860: GzipFile and BZ2File now support the context manager protocol. 2009-01-10 16:13:45 +00:00
Antoine Pitrou 4c5ecb7cbb Issue #4074: Change the criteria for doing a full garbage collection (i.e.
collecting the oldest generation) so that allocating lots of objects without
destroying them does not show quadratic performance. Based on a proposal by
Martin von Löwis at http://mail.python.org/pipermail/python-dev/2008-June/080579.html.
2009-01-09 21:40:55 +00:00
Kristján Valur Jónsson 0e2d8c36e3 Issue 4293: Make Py_AddPendingCall() thread safe
Add test cases and documentation
2009-01-09 21:35:16 +00:00
Jeffrey Yasskin d89f5b20b2 Fix issue 4884, preventing a crash in the socket code when python is compiled
with llvm-gcc and run with a glibc <2.10.
2009-01-09 16:47:07 +00:00
Benjamin Peterson f902a949c6 be more specific in -3 option help 2009-01-09 03:07:27 +00:00
Raymond Hettinger 5b913e31a1 Forward port r68394 for issue 4816. 2009-01-08 06:39:04 +00:00
Guilherme Polo e7f140355b The _tkinter module functions "createfilehandler", "deletefilehandler",
"createtimerhandler", "mainloop", "dooneevent" and "quit" have been
deprecated for removal in 3.x (part of issue #3638).
2009-01-03 21:51:09 +00:00
Martin v. Löwis 9ac4927125 Issue #4051: Prevent conflict of UNICODE macros in cPickle. 2009-01-02 20:40:14 +00:00
Amaury Forgeot d'Arc 57eb0e90c1 #4801 _collections module fails to build on cygwin.
_PyObject_GC_TRACK is the macro version of PyObject_GC_Track,
and according to documentation it should not be used for extension modules.
2009-01-02 00:03:54 +00:00
Hirokazu Yamamoto 99a1b20bbf Issue #4797: IOError.filename was not set when _fileio.FileIO failed to open
file with `str' filename on Windows.
2009-01-01 15:45:39 +00:00
Antoine Pitrou aa687902f2 Issue #3680: Reference cycles created through a dict, set or deque iterator did not get collected. 2009-01-01 14:11:22 +00:00
Georg Brandl 6269fec171 #4228: Pack negative values the same way as 2.4
in struct's L format.
2009-01-01 12:15:31 +00:00
Hirokazu Yamamoto 3cda1db67f Just inserted blank line. 2008-12-31 05:47:19 +00:00
Hirokazu Yamamoto 52c1e3cc08 Fixed compile error on windows. 2008-12-31 05:24:37 +00:00
Nick Coghlan 180e400766 Issue #4701: implicitly call PyType_Ready from PyObject_Hash 2008-12-30 01:18:48 +00:00
Martin v. Löwis 03824e45f6 Issue #1040026: Fix os.times result on systems where HZ is incorrect. 2008-12-29 18:17:34 +00:00
Benjamin Peterson 7af65568ff #4764 in io.open, set IOError.filename when trying to open a directory on POSIX platforms 2008-12-29 17:56:58 +00:00
Alexandre Vassalotti f852bf97ef Fix issue #4730: cPickle corrupts high-unicode strings.
Update outdated copy of PyUnicode_EncodeRawUnicodeEscape.
Add a test case.
2008-12-27 07:08:47 +00:00
Benjamin Peterson e098c4abe5 make global static 2008-12-23 20:12:33 +00:00
Benjamin Peterson b6a53b5c52 use a global variable, so the compiler doesn't optimize the assignment out 2008-12-23 20:09:28 +00:00
Benjamin Peterson 5423abd182 silence compiler warning 2008-12-22 22:12:19 +00:00
Benjamin Peterson 4caef5c7e2 fix #4720: the format to PyArg_ParseTupleAndKeywords can now start with '|' 2008-12-22 20:51:15 +00:00
Benjamin Peterson 9de7298102 remove redundant sentence 2008-12-20 22:49:24 +00:00
Benjamin Peterson fed67fd41e beef up docstring 2008-12-20 02:57:19 +00:00
Antoine Pitrou 73c0e65fc3 Issue #2467: gc.DEBUG_STATS reports invalid elapsed times.
Patch by Neil Schemenauer, very slightly modified.
2008-12-17 22:46:54 +00:00
Amaury Forgeot d'Arc 31949b9108 #3954: Fix error handling code in _hotshot.logreader
Will port to 2.6. hotshot was deleted from python 3.
2008-12-15 21:47:57 +00:00
Nick Coghlan a2053475bb Fix several issues relating to access to source code inside zipfiles. Initial work by Alexander Belopolsky. See Misc/NEWS in this checkin for details. 2008-12-14 10:54:50 +00:00
Mark Dickinson 4c96fa5525 Issues #3167, #3682: tests for math.log and math.log10 were failing on
Solaris and OpenBSD.  Fix this by handling special values and domain
errors directly in mathmodule.c, passing only positive nonspecial floats
to the system log/log10.
2008-12-11 19:28:08 +00:00
Skip Montanaro 45313fe6e0 issue 4483 - dbm build failures on systems with gdbm_compat lib. 2008-12-06 17:43:30 +00:00
Georg Brandl fe879e8a23 #4529: fix parser's validation for try-except-finally statements. 2008-12-05 12:09:41 +00:00
Christian Heimes dee3c9c606 Issue #4025 again
Converted a C99 style comment to a C89 style comment (found by MAL).
2008-12-03 00:53:18 +00:00
Jeremy Hylton 0d52182f67 Move definition int sval into branch of ifdef where it is used.
Otherwise, you get a warning about an undefined variable.
2008-11-28 23:42:59 +00:00
Matthias Klose 4de979153e - Modules/Setup.dist: Update _elementtree, add _bisect, datetime 2008-11-27 10:14:22 +00:00
Matthias Klose b0c3c026a0 - Modules/Setup.dist: Update pyexpat 2008-11-27 07:45:25 +00:00
Matthias Klose 7fab0dcdd4 - Modules/Setup.dist: Mention _elementtree and _pickle. 2008-11-26 17:32:49 +00:00
Benjamin Peterson 9dfe6a8862 #4396 make the parser module correctly validate the with syntax 2008-11-24 04:09:03 +00:00
Matthias Klose 75bfcbaf88 - Fix typo in last checkin 2008-11-23 13:54:42 +00:00
Matthias Klose 225d60c31e - Modules/Setup.dist: Mention _functools in section "Modules that should
always be present (non UNIX dependent)"
2008-11-23 13:37:03 +00:00
Benjamin Peterson bfc51567f5 backport r67325: make FileIO.mode always contain 'b' 2008-11-22 01:59:15 +00:00
Amaury Forgeot d'Arc 322656596a Fixed issue #4233.
Changed semantic of _fileio.FileIO's close()  method on file objects with closefd=False.
The file descriptor is still kept open but the file object behaves like a closed file.
The FileIO  object also got a new readonly attribute closefd.

Approved by Barry

Backport of r67106 from the py3k branch
2008-11-20 23:34:31 +00:00
Amaury Forgeot d'Arc 7cfe7ea745 #4317: Fix an Array Bounds Read in imageop.rgb2rgb8.
Will backport to 2.4.
2008-11-18 22:19:37 +00:00
Hirokazu Yamamoto ed29bb49f8 Issue #4071: ntpath.abspath returned an empty string for long unicode path. 2008-11-08 03:46:17 +00:00
Martin v. Löwis bb86d83134 Issue #4204: Fixed module build errors on FreeBSD 4. 2008-11-04 20:40:09 +00:00
Benjamin Peterson 6624a9fddd #4048 make the parser module accept relative imports as valid 2008-11-03 15:14:51 +00:00
Benjamin Peterson dcee09d920 make sure the parser flags and passed onto the compiler
This fixes "from __future__ import unicode_literals" in an exec statment
See #4225
2008-10-31 02:16:05 +00:00
Christian Heimes ab5f879022 Issue #4237: io.FileIO() was raising invalid warnings caused by insufficient initialization of PyFileIOObject struct members. 2008-10-30 21:26:15 +00:00
Amaury Forgeot d'Arc 69a9c5b539 Issue #4176: Pickle would crash the interpreter when a __reduce__ function
does not return an iterator for the 4th and 5th items.
(sequence-like and mapping-like state)

A list is not an iterator...

Will backport to 2.6 and 2.5.
2008-10-30 21:18:34 +00:00
Amaury Forgeot d'Arc 9f616f48ca Correct error message in io.open():
closefd=True is the only accepted value with a file name.
2008-10-29 23:15:57 +00:00
Benjamin Peterson 336680ecea fix more possible ref leaks in _json and use Py_CLEAR 2008-10-16 21:48:06 +00:00
Benjamin Peterson 87e6ad290b fix possible ref leak 2008-10-16 21:27:54 +00:00
Benjamin Peterson 595e3cbb3d check for error conditions in _json #3623 2008-10-16 21:09:28 +00:00
Hirokazu Yamamoto 61376409a9 removed unused _PyUnicode_FromFileSystemEncodedObject.
made win32_chdir, win32_wchdir static.
2008-10-16 06:25:25 +00:00
Amaury Forgeot d'Arc 07d539d08b #4122: On Windows, Py_UNICODE_ISSPACE cannot be used in an extension module:
compilation fails with "undefined reference to _Py_ascii_whitespace"

Will backport to 2.6.
2008-10-14 21:47:22 +00:00
Hirokazu Yamamoto 6c75a30712 r66862 contained memory leak. 2008-10-09 10:11:21 +00:00
Hirokazu Yamamoto 10a018c285 On windows, os.chdir given unicode was not working if GetCurrentDirectoryW
returned a path longer than MAX_PATH. (But It's doubtful this code path is
really executed because I cannot move to such directory on win2k)
2008-10-09 10:00:30 +00:00
Georg Brandl f3776a17ef #3935: properly support list subclasses in the C impl. of bisect.
Patch reviewed by Raymond.
2008-10-08 18:47:17 +00:00
Andrew M. Kuchling 658c45fd3b Docstring typo. 2008-10-03 12:26:42 +00:00
Christian Heimes 32a66a0410 Fixed a couple more C99 comments and one occurence of inline. 2008-10-02 19:47:50 +00:00
Brett Cannon f40200b214 Fix a refleak introduced by r66677.
Fix suggested by Amaury Forgeot d'Arc.
Closes issue #4003.
2008-09-30 17:46:03 +00:00
Benjamin Peterson 0225248033 Victor Stinner's patches to check the return result of PyLong_Ssize_t
reviewed by Amaury
2008-09-30 02:11:07 +00:00
Benjamin Peterson 8d77d448a5 fix security issue 2: imageop's poor validation of arguments could result in segfaults
patch by Victor Stinner
reviewed by myself and Brett
2008-09-30 01:31:49 +00:00
Thomas Heller e144873071 Fix issue #3547 for MingW, update comments. 2008-09-29 19:56:24 +00:00
Brett Cannon b2d61bde28 The _lsprof module could crash the interpreter if it was given an external
timer that did not return a float and a timer was still running when the
Profiler object was garbage collected.

Fixes issue 3895.
Code review by Benjamin Peterson.
2008-09-29 03:41:21 +00:00
Jesus Cea 09c0178242 bsddb4.7.3pre9 renamed to 4.7.3 2008-09-28 23:24:19 +00:00
Thomas Heller a85c95d5e8 Fix issue #3547: ctypes is confused by bitfields of varying integer types
Reviewed by Fredrik Lundh and Skip Montanaro.
2008-09-24 18:26:05 +00:00
Jesus Cea 5cd5f12a48 Bugfix for issue3885 and 'DB.verify()' crash.
Reviewed by Nick Coghlan.
2008-09-23 18:54:08 +00:00
Hirokazu Yamamoto 09979a137a Issue #3945: Fixed compile error on cygwin. (initializer element is not constant)
Reviewed by Amaury Forgeot d'Arc.
2008-09-23 16:11:09 +00:00
Georg Brandl a438c85a88 #3897: _collections now has an underscore. 2008-09-21 07:31:52 +00:00
Georg Brandl 2f3bd8364a #3852: fix some select.kqueue and kevent docs. 2008-09-21 07:14:44 +00:00
Benjamin Peterson fbb388b39b tabify 2008-09-18 23:20:28 +00:00
Benjamin Peterson 8c2b7dc463 fix possible integer overflows in _hashopenssl #3886 2008-09-18 01:22:16 +00:00
Gerhard Häring e6872eb417 Issue #3846: Release GIL during calls to sqlite3_prepare. This improves concurrent access to the same database file from multiple threads/processes. 2008-09-12 22:33:22 +00:00
Gerhard Häring 6e1afcf988 Fixes issue #3103. In the sqlite3 module, made one more function static. All renaming public symbos now have the pysqlite prefix to avoid name clashes. This at least once created problems where the same symbol name appeared somewhere in Apache and the sqlite3 module was used from mod_python. 2008-09-12 18:58:57 +00:00
Gerhard Häring ef2276b60d sqlite3 module: Mark iterdump() method as "Non-standard" like all the other methods not found in DB-API. 2008-09-12 13:54:06 +00:00
Amaury Forgeot d'Arc 24cb382455 #3640: Correct a crash in cPickle on 64bit platforms, in the case of deeply nested lists or dicts.
Reviewed by Martin von Loewis.
2008-09-11 20:56:13 +00:00
Amaury Forgeot d'Arc 05e344954d #3743: PY_FORMAT_SIZE_T is designed for the OS "printf" functions, not for
PyString_FromFormat which has an independent implementation, and uses "%zd".

This makes a difference on win64, where printf needs "%Id" to display
64bit values. For example, queue.__repr__ was incorrect.

Reviewed by Martin von Loewis.
2008-09-10 22:04:45 +00:00
Guido van Rossum e3c4fd9cc0 - Issue #3629: Fix sre "bytecode" validator for an end case.
Reviewed by Amaury.
2008-09-10 14:27:00 +00:00
Martin v. Löwis 24329ba176 Issue #3811: The Unicode database was updated to 5.1.
Reviewed by Fredrik Lundh and Marc-Andre Lemburg.
2008-09-10 13:38:12 +00:00
Jesus Cea 69acb43327 Python3.0 bsddb testsuite compatibility improvements 2008-09-03 22:07:11 +00:00
Jesse Noller b814d6a704 Fix issue 3110 - solaris compilation of multiprocessing fails, reviewed by pitrou 2008-09-03 18:10:30 +00:00
Jesus Cea ac25fab12f Fix some leaks - Neal Norwitz 2008-09-03 17:50:32 +00:00
Jesus Cea 3b6be74304 Improve compatibility with Python3.0 testsuite 2008-09-02 02:29:06 +00:00
Benjamin Peterson f22c26ecf4 #3703 unhelpful _fileio.FileIO error message when trying to open a directory
Reviewer: Gregory P. Smith
2008-09-01 14:13:43 +00:00
Jesus Cea 4907d27c1f Update bsddb code to version 4.7.3pre2. This code should
be compatible with Python 3.0, also.

  http://www.jcea.es/programacion/pybsddb.htm#bsddb3-4.7.3
2008-08-31 14:00:51 +00:00
Neal Norwitz 901e4715bd #3662: Fix segfault introduced when fixing memory leaks.
TESTED=./python -E -tt ./Lib/test/regrtest.py test_fileio
R (approach from bug)=Amaury and Benjamin
2008-08-24 22:03:05 +00:00
Neal Norwitz 18aa388ca0 Fix:
* crashes on memory allocation failure found with failmalloc
 * memory leaks found with valgrind
 * compiler warnings in opt mode which would lead to invalid memory reads
 * problem using wrong name in decimal module reported by pychecker

Update the valgrind suppressions file with new leaks that are small/one-time
leaks we don't care about (ie, they are too hard to fix).

TBR=barry
TESTED=./python -E -tt ./Lib/test/regrtest.py -uall (both debug and opt modes)
  in opt mode:
  valgrind -q --leak-check=yes --suppressions=Misc/valgrind-python.supp \
    ./python -E -tt ./Lib/test/regrtest.py -uall,-bsddb,-compiler \
                        -x test_logging test_ssl test_multiprocessing
  valgrind -q --leak-check=yes --suppressions=Misc/valgrind-python.supp \
    ./python -E -tt ./Lib/test/regrtest.py test_multiprocessing
  for i in `seq 1 4000` ; do
    LD_PRELOAD=~/local/lib/libfailmalloc.so FAILMALLOC_INTERVAL=$i \
        ./python -c pass
  done

At least some of these fixes should probably be backported to 2.5.
2008-08-24 05:04:52 +00:00
Benjamin Peterson 37346b2b9b #3643 add a few more checks to _testcapi to prevent segfaults
Author: Victor Stinner
Reviewer: Benjamin Peterson
2008-08-23 20:27:43 +00:00
Christian Heimes 94a730540a d is the correct format string 2008-08-22 21:23:47 +00:00
Christian Heimes 1cc69636ef Fixed two format strings in the _collections module. For example
Modules/_collectionsmodule.c:674: warning: format '%i' expects type 'int', but argument 2 has type 'Py_ssize_t'
Reviewed by Benjamin Peterson
2008-08-22 20:10:27 +00:00
Christian Heimes a27a62e74c Silenced a compiler warning in the sqlite module
Modules/_sqlite/row.c:187: warning: suggest parentheses around && within ||
Reviewed by Benjamin Peterson
2008-08-22 19:55:54 +00:00
Guido van Rossum 93ebfb1544 Issue 1179: [CVE-2007-4965] Integer overflow in imageop module. 2008-08-19 21:02:04 +00:00
Thomas Heller d9ccf8c547 COM method code is windows specific 2008-08-19 19:40:23 +00:00
Thomas Heller 0ad5ae02af Fix a regression introduced by rev. 63792: ctypes function pointers
that are COM methods must have a boolean True value.
2008-08-19 19:25:04 +00:00
Thomas Heller 6626099520 Fix strange character in the docstring. 2008-08-19 17:47:13 +00:00
Benjamin Peterson 7dd854725b get the symtable module back in working order
- Fix broken functions
- Add (hopefully) extensive tests
- Modernize a little
2008-08-17 17:13:26 +00:00
Hirokazu Yamamoto 41a81eb6cb Backport r65661, r65760: Issue #3575: Incremental decoder's decode
function now takes bytearray by using 's*' instead of 't#'.
2008-08-17 13:10:46 +00:00
Hirokazu Yamamoto a0fdd72f8e Issue #2222: Fixed reference leak when occured os.rename()
fails unicode conversion on 2nd parameter. (windows only)
2008-08-17 09:19:52 +00:00
Martin v. Löwis 8401eec7fa Properly INCREF reference in Py_buffer. 2008-08-14 15:56:07 +00:00
Martin v. Löwis f91d46a17d Issue #3139: Make buffer-interface thread-safe wrt. PyArg_ParseTuple,
by denying s# to parse objects that have a releasebuffer procedure,
and introducing s*.

More module might need to get converted to use s*.
2008-08-12 14:49:50 +00:00
Brett Cannon 83e818415a Copy reduce() to _functools so to have functools.reduce() not raise a warning
from usage under -3.
2008-08-09 23:30:55 +00:00
Antoine Pitrou 016b366df4 #3205: bz2 iterator fails silently on MemoryError 2008-08-09 17:22:25 +00:00
Guido van Rossum d69390107a Patch by Ian Charnas from issue 3517.
Add F_FULLFSYNC if it exists (OS X only so far).
2008-08-07 18:51:38 +00:00
Guido van Rossum 8b762f05c7 Tracker issue 3487: sre "bytecode" verifier.
This is a verifier for the binary code used by the _sre module (this
is often called bytecode, though to distinguish it from Python bytecode
I put it in quotes).

I wrote this for Google App Engine, and am making the patch available as
open source under the Apache 2 license.  Below are the copyright
statement and license, for completeness.

# Copyright 2008 Google Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

It's not necessary to include these copyrights and bytecode in the
source file.  Google has signed a contributor's agreement with the PSF
already.
2008-08-05 03:39:21 +00:00
Benjamin Peterson 8df0e4ffc3 fix compile error on Windows 2008-08-02 03:11:16 +00:00
Jesse Noller 1299e36a70 Submit fix for issue3393: Memory corruption in multiprocessing module 2008-08-01 19:46:50 +00:00
Neal Norwitz e7d8be80ba Security patches from Apple: prevent int overflow when allocating memory 2008-07-31 17:17:14 +00:00
Mark Dickinson ff3fdce0d2 Replace math.sum with math.fsum in a couple of comments
that were missed by r65308
2008-07-30 16:25:16 +00:00
Mark Dickinson fef6b13c32 Rename math.sum to math.fsum 2008-07-30 16:20:10 +00:00
Mark Dickinson abe0aee3cf Fix special-value handling for math.sum.
Also minor cleanups to the code: fix tabbing, remove
trailing whitespace, and reformat to fit into 80
columns.
2008-07-30 12:01:41 +00:00
Thomas Heller ba55936b8a Make ctypes compatible with Python 2.3, 2.4, and 2.5 again. 2008-07-24 11:16:45 +00:00
Raymond Hettinger 527eee2b32 Finish conversion from int to Py_ssize_t. 2008-07-24 05:38:48 +00:00
Raymond Hettinger 723ba3049a Parse to the correct datatype. 2008-07-24 00:53:49 +00:00
Raymond Hettinger 33fcf9db74 Finish-up the partial conversion from int to Py_ssize_t for deque indices and length. 2008-07-24 00:08:18 +00:00
Georg Brandl f9efabb6d2 3k-warn about parser's "ast" aliases. 2008-07-23 15:16:45 +00:00
Jesus Cea c5a11fabdb bsddb module updated to version 4.7.2devel9.
This patch publishes the work done until now
for Python 3.0 compatibility. Still a lot
to be done.

When possible, we use 3.0 features in Python 2.6,
easing development and testing, and exposing internal
changes to a wider audience, for better test coverage.

Some mode details:
http://www.jcea.es/programacion/pybsddb.htm#bsddb3-4.7.2
2008-07-23 11:38:42 +00:00
Gregory P. Smith 0470bab697 Issue #2620: Overflow checking when allocating or reallocating memory
was not always being done properly in some python types and extension
modules.  PyMem_MALLOC, PyMem_REALLOC, PyMem_NEW and PyMem_RESIZE have
all been updated to perform better checks and places in the code that
would previously leak memory on the error path when such an allocation
failed have been fixed.
2008-07-22 04:46:32 +00:00
Amaury Forgeot d'Arc 74bd40d85c On Windows, silence a Purify warning and initialize the memory passed to CryptGenRandom.
Since python doesn't provide any particular random data, it seems more reasonable anyway.
2008-07-21 21:06:46 +00:00
Bob Ippolito d648f64a53 #3322: bounds checking for _json.scanstring 2008-07-19 21:59:50 +00:00
Georg Brandl 278fc50c07 #3303: fix crash with invalid Py_DECREF in strcoll(). 2008-07-19 12:46:12 +00:00
Georg Brandl 6b41a8e156 #3302: fix segfaults when passing None for arguments that can't
be NULL for the C functions.
2008-07-19 12:39:10 +00:00
Georg Brandl a24869ada7 #3312: fix two sqlite3 crashes. 2008-07-16 22:33:18 +00:00
Georg Brandl b9b68ae7a5 #3305: self->stream can be NULL. 2008-07-16 22:04:20 +00:00
Georg Brandl 86cbf81b47 #1608818: errno can get set by every call to readdir(). 2008-07-16 21:31:41 +00:00
Thomas Heller 880f529c04 Issue #3313: Contrary to the man page, a failed dlopen() call does not
always set a dlerror() message.
2008-07-15 19:39:38 +00:00
Thomas Heller c0b2a807ff Issue #3258: Fix an assertion error (in debug build) and a crash (in
release build) when the format string of a pointer to an incomplete
structure is created.
2008-07-15 17:03:08 +00:00
Nick Coghlan 53663a695e Issue 2235: __hash__ is once again inherited by default, but inheritance can be blocked explicitly so that collections.Hashable remains meaningful 2008-07-15 14:27:37 +00:00
Gregory P. Smith fb7a50fbb9 Fix posix.fork1() / os.fork1() to only call PyOS_AfterFork() in the child
process rather than both parent and child.

Does anyone actually use fork1()?  It appears to be a Solaris thing
but if Python is built with pthreads on Solaris, fork1() and fork()
should be the same.
2008-07-14 06:06:48 +00:00
Alexandre Vassalotti bd70476897 Issue #3153: sqlite leaks on error.
Changed statements of the form Py_DECREF(obj), obj = 0 to Py_CLEAR(obj).
2008-07-13 21:47:59 +00:00
Robert Schuppenies 4762902998 Added garbage collector overhead and optional default return value to
sys.getsizeof.
2008-07-10 17:13:55 +00:00
Raymond Hettinger 3cd1e42dca Issue 3301: Bisect functions behaved badly when lo was negative. 2008-07-10 14:03:19 +00:00
Facundo Batista 1a664419bb Issue 3306. Better control for a lenght in findmax() function. 2008-07-07 17:02:59 +00:00
Gregory P. Smith 04222925f1 Add commented out #_sha256 and #_sha512 lines per issue 3183. 2008-07-07 04:54:31 +00:00
Gregory P. Smith 3b1e6b2f83 - Issue #3309: Fix bz2.BZFile itererator to release its internal lock
properly when raising an exception due to the bz2file being closed.
  Prevents a deadlock.
2008-07-07 04:31:58 +00:00
Gregory P. Smith eb77fe4cbf fix issue3304 - remove an incorrect PyMem_Free in fileio_init 2008-07-06 17:06:29 +00:00