| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
| |
This file includes <Python.h>, with some #defines that affect the
interpretation of the Python headers (PY_SSIZE_T_CLEAN, PY_SIZE_T_CLEAN).
In particular, <Python.h> transitively includes pyconfig.h, which
defines _GNU_SOURCE, altering the version of struct stat used;
this is potentially a problem if a struct stat is shared between
files, although in practice we don't do that.
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=749133
|
| |
|
|
|
|
| |
Every use here turns out to be unnecessary, some compilers *still*
don't have it after more than a decade in ISO C, and if we need
fixed-length integer types we can use the ones from D-Bus.
|
| |
|
|
|
| |
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=47108
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
|
| |
|
|
|
| |
This reverts the Python 2 API to be in terms of PyInt, leaving the
Python 3 API in terms of PyLong (which is called 'int' in Python code).
|
| |
|
|
| |
reinventing it
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
2, since there are still some unconditional PyInt calls, which are not valid
in Python 3. However, it lays the framework for conditionalizing on Python 3
and using only PyLong in that case. Where it doesn't matter, PyLong is used
unconditionally.
|
| | |
|
| |
|
|
|
| |
PyString API. This makes the code compilable in Python 2.x (x >= 6) and
Python 3.
|
| |
|
|
|
| |
legal in Python 2 also. Use fancy REPR macro and the %V format code for
cross-Python compatibility.
|
| |
|
|
| |
for Python 3 support.
|
| |
|
|
|
|
| |
Based on part of a patch from Barry Warsaw.
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
|
| |
|
|
|
|
|
| |
This avoids these static types wrongly being deallocated. Python
implements static types as having one initial reference, which is never
meant to be released, but if you get your refcounting wrong they'll be
"deallocated" (causing a crash) during Py_Finalize.
|
| | |
|
| |
|
|
| |
removing all references to the LGPL as a result
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
__dict__ on deallocation.
* Use a fixed-size struct for String (unicode objects are in fact fixed-size)
and store its variant_level that way.
* Don't store Struct, _LongBase, _StrBase variant_level and Struct signature
in a __dict__, but instead have a global dict mapping object IDs to variant
levels, and a global dict mapping Struct IDs to signatures. This is a bit
strange, but easier than correctly freeing the __dict__ (which is stored
at the end of a variable-length struct, so somewhat hard to get at).
* With this change, allocating objects in a loop no longer leaks memory, and
neither does the test case supplied by Luka Renko.
|
| | |
|
| |
|
|
| |
half-participating in the int free list (which would result in _IntBase instances leaking)
|
| |
|
|
| |
lines in license statement
|
| |
|
|
| |
attribute are serialized as that object path. Add that attribute to ProxyObject, dbus.Interface and dbus.service.Object.
|
| | |
|
|
|
signature, string) into separate translation units
|