Victor Stinner
5dacbd4c42
Cleanup hashtable.h
Issue #26588 :
* Pass the hash table rather than the key size to hash and compare functions
* _Py_HASHTABLE_READ_KEY() and _Py_HASHTABLE_ENTRY_READ_KEY() macros now expect
the hash table as the first parameter, rather than the key size
* tracemalloc_get_traces_fill(): use _Py_HASHTABLE_ENTRY_READ_DATA() rather
than pointer dereference
* Remove the _Py_HASHTABLE_ENTRY_WRITE_PKEY() macro
* Move "PKEY" and "PDATA" macros inside hashtable.c
10 years ago
Victor Stinner
e8c6b2fd1b
Issue #26588 :
* _Py_HASHTABLE_ENTRY_DATA: change type from "char *" to "const void *"
* Add _Py_HASHTABLE_ENTRY_WRITE_PKEY() macro
* Rename _Py_HASHTABLE_ENTRY_WRITE_DATA() macro to
_Py_HASHTABLE_ENTRY_WRITE_PDATA()
* Add _Py_HASHTABLE_ENTRY_WRITE_DATA() macro
10 years ago
Victor Stinner
285cf0a601
hashtable.h now supports keys of any size
Issue #26588 : hashtable.h now supports keys of any size, not only
sizeof(void*). It allows to support key larger than sizeof(void*), but also to
use less memory for key smaller than sizeof(void*).
10 years ago
Victor Stinner
322bc12c31
Ooops, revert changeset ea9efa06c137
Change pushed by mistake, the patch is still under review :-/
"""
_tracemalloc: add domain to trace keys
* hashtable.h: key has now a variable size
* _tracemalloc uses (pointer: void*, domain: unsigned int) as key for traces
"""
10 years ago
Victor Stinner
51b846c47a
_tracemalloc: add domain to trace keys
* hashtable.h: key has now a variable size
* _tracemalloc uses (pointer: void*, domain: unsigned int) as key for traces
10 years ago
Victor Stinner
1aa78938b0
Issue #26146 : marshal.loads() now uses the empty frozenset singleton
10 years ago
Serhiy Storchaka
ef1585eb9a
Issue #25923 : Added more const qualifiers to signatures of static and private functions.
10 years ago
Serhiy Storchaka
225821c653
Issue #25899 : Converted non-ASCII characters in docstrings and manpage
to ASCII replacements. Original patch by Chris Angelico.
10 years ago
Victor Stinner
e134a7fe36
Issue #23752 : _Py_fstat() is now responsible to raise the Python exception
Add _Py_fstat_noraise() function when a Python exception is not welcome.
11 years ago
Victor Stinner
f329878e74
Issue #23753 : Python doesn't support anymore platforms without stat() or
fstat(), these functions are always required.
Remove HAVE_STAT and HAVE_FSTAT defines, and stop supporting DONT_HAVE_STAT and
DONT_HAVE_FSTAT.
11 years ago
Steve Dower
f2f373f593
Issue #23152 : Implement _Py_fstat() to support files larger than 2 GB on Windows.
fstat() may fail with EOVERFLOW on files larger than 2 GB because the file size type is an signed 32-bit integer.
11 years ago
Serhiy Storchaka
26861b0b29
Issue #23450 : Fixed possible integer overflows.
11 years ago
Serhiy Storchaka
c07422c119
Splitted the WFILE structure to WFILE and RFILE.
11 years ago
Serhiy Storchaka
c1efe5f039
Issue #23344 : marshal.dumps() is now 20-25% faster on average.
11 years ago
Serhiy Storchaka
ce921c62cc
Issue #20416 : marshal.dumps() with protocols 3 and 4 is now 40-50% faster on
average.
11 years ago
Serhiy Storchaka
000daaee57
Fixed memory leak in marshal.
11 years ago
Serhiy Storchaka
b757c83ec6
Issue #22581 : Use more "bytes-like object" throughout the docs and comments.
11 years ago
Steve Dower
f6c69e6cc9
#22734 marshal needs a lower stack depth for debug builds on Windows
11 years ago
Victor Stinner
45e8e2f218
Issue #21490 : Add new C macros: Py_ABS() and Py_STRINGIFY()
Keep _Py_STRINGIZE() in PC/pyconfig.h to not introduce a dependency between
pyconfig.h and pymacros.h.
12 years ago
Victor Stinner
da062558db
Fix compiler warning (on Windows 64-bit): explicit cast Py_ssize_t to unsigned
char, n is in range [0; 255] (a tuple cannot have a negative length)
12 years ago
Victor Stinner
359fabc19f
Issue #19437 : Cleanup r_ref() of the marshal module
12 years ago
Victor Stinner
d5cae6f143
Issue #19437 : Fix r_object() of marshal module, handle PyDict_SetItem() failure
for TYPE_DICT and stop immedialty on first r_object() failure
12 years ago
Victor Stinner
b1b7b1834b
Issue #19437 : Fix r_object() of marshal module, handle r_byte() failure for
TYPE_SMALL_TUPLE
12 years ago
Victor Stinner
763b0d19c9
Issue #19437 : Fix r_PyLong() of marshal module, stop immediatly at first
failure, don't read any more data
12 years ago
Serhiy Storchaka
c679227e31
Issue #1772673 : The type of `char*` arguments now changed to `const char*`.
12 years ago
Antoine Pitrou
42c25f5581
Close #19260 : remove outdated comment in marshal.c
12 years ago
Kristján Valur Jónsson
0a7697b718
Catch a few extra error cases in marshal.c
12 years ago
Kristján Valur Jónsson
5983258bf2
Issue #19219 Remove a lot of "retval = NULL" statements, now that retval
is pre-initialized to that value. Test show a 5% speedup as a bonus.
12 years ago
Christian Heimes
3572842c19
Issue #19219 : retval may be used uninitialized value
CID 486239: Uninitialized pointer read (UNINIT)
12 years ago
Antoine Pitrou
b30f271299
Try to fix weird assertion error on the Fedora buildbot.
12 years ago
Antoine Pitrou
1164dfcb86
Issue #19219 : Speed up marshal.loads(), and make pyc files slightly (5% to 10%) smaller.
12 years ago
Serhiy Storchaka
9594942716
Issue #18783 : Removed existing mentions of Python long type in docstrings,
error messages and comments.
13 years ago
Antoine Pitrou
9ed5f27266
Issue #18722 : Remove uses of the "register" keyword in C code.
13 years ago
Serhiy Storchaka
3641a74e1c
Issue #17872 : Fix a segfault in marshal.load() when input stream returns
more bytes than requested.
13 years ago
Serhiy Storchaka
dfde2151ed
Fix reference leaks introduced by the patch for issue #5308 .
13 years ago
Victor Stinner
3a8b79d4d2
Issue #18408 : Fix marshal reader for Unicode strings: handle
PyUnicode_DecodeUTF8() failure (ex: MemoryError).
13 years ago
Victor Stinner
f1913ca37f
marshal: optimize parsing of empty Unicode strings
Don't create a temporary buffer of zeroy byte nor call r_string() if the length
is zero, create directly the empty string.
13 years ago
Antoine Pitrou
e9bbe8b87b
Issue #15480 : Remove the deprecated and unused TYPE_INT64 code from marshal.
Initial patch by Daniel Riti.
13 years ago
Kristján Valur Jónsson
6168362509
Issue #16475 : Correctly handle the EOF when reading marshal streams.
13 years ago
Kristján Valur Jónsson
e178187bf6
Issue #16475 : Simplify the interface to r_ref_allocate and improve comments.
13 years ago
Benjamin Peterson
eddb0a7884
fix compiler warning
13 years ago
Benjamin Peterson
605a774a98
Backed out changeset 521232b05b97
13 years ago
Benjamin Peterson
c6dc12484b
fix compiler warning
13 years ago
Kristján Valur Jónsson
d7009c6913
Issue #16475 : Support object instancing, recursion and interned strings
in marshal
13 years ago
Serhiy Storchaka
7e0191170e
Issue #5308 : Raise ValueError when marshalling too large object (a sequence
with size >= 2**31), instead of producing illegal marshal data.
13 years ago
Serhiy Storchaka
34fe1b7a3d
Issue #5308 : Raise ValueError when marshalling too large object (a sequence
with size >= 2**31), instead of producing illegal marshal data.
13 years ago
Martin v. Löwis
7e39572aa8
Issue #15466 : Stop using TYPE_INT64 in marshal,
to make importlib.h (and other byte code files) equal between 32-bit
and 64-bit systems.
14 years ago
Antoine Pitrou
4a90ef0363
Issue #14177 : marshal.loads() now raises TypeError when given an unicode string.
Patch by Guilherme Gonçalves.
14 years ago
Antoine Pitrou
1c13f84f55
Simplify code in marshal.c.
14 years ago
Antoine Pitrou
679e9d36f7
Issue #14172 : Fix reference leak when marshalling a buffer-like object (other than a bytes object).
14 years ago