• Xavier Thompson's avatar
    Fix automatic locking for nested cypclass attribute access. · b05f5111
    Xavier Thompson authored
    Example of nested attribute access:
    ```
    a.b.c.d
    ```
    
    Before this commit, only the outermost object was properly locked when
    accessing its attribute. For the inner objects which are themselves
    attributes of outermore objects, the locks were released immediately
    after being acquired and before accessing the object's attribute.
    
    Pseudo code example:
    ```
    lock a
    temp_b = a.b
    lock temp_b
    unlock temp_b
    temp_c = temp_b.c
    lock temp_c
    unlock temp_c
    temp_c.d
    unlock a
    ```
    
    instead of:
    ```
    lock a
    temp_b = a.b
    lock temp_b
    temp_c = temp_b.c
    lock temp_c
    temp_c.d
    unlock temp_c
    unlock temp_b
    unlock a
    ```
    b05f5111
Name
Last commit
Last update
.github Loading commit data...
Cython Loading commit data...
Demos Loading commit data...
Doc/s5 Loading commit data...
Tools Loading commit data...
appveyor Loading commit data...
bin Loading commit data...
docs Loading commit data...
nogil_test Loading commit data...
pyximport Loading commit data...
tests Loading commit data...
.editorconfig Loading commit data...
.gitignore Loading commit data...
.hgignore Loading commit data...
.hgtags Loading commit data...
.mailmap Loading commit data...
.travis.yml Loading commit data...
BUILD.bazel Loading commit data...
CHANGES.rst Loading commit data...
COPYING.txt Loading commit data...
INSTALL.txt Loading commit data...
LICENSE.txt Loading commit data...
MANIFEST.in Loading commit data...
Makefile Loading commit data...
README.rst Loading commit data...
ToDo.txt Loading commit data...
USAGE.txt Loading commit data...
appveyor.yml Loading commit data...
cygdb.py Loading commit data...
cython.py Loading commit data...
cythonize.py Loading commit data...
git Loading commit data...
pylintrc Loading commit data...
runtests.py Loading commit data...
setup.cfg Loading commit data...
setup.py Loading commit data...
setupegg.py Loading commit data...
test-requirements-cpython.txt Loading commit data...
test-requirements.txt Loading commit data...
tox.ini Loading commit data...