Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Fixed bpo-29565: Corrected ctypes passing of large structs by value on Windows AMD64.#168

Merged
vsajip merged 2 commits intopython:masterpython/cpython:masterfrom
vsajip:fix-29565Copy head branch name to clipboard
Feb 20, 2017
Merged

Fixed bpo-29565: Corrected ctypes passing of large structs by value on Windows AMD64.#168
vsajip merged 2 commits intopython:masterpython/cpython:masterfrom
vsajip:fix-29565Copy head branch name to clipboard

Conversation

@vsajip
Copy link
Member

@vsajip vsajip commented Feb 19, 2017

Added code and test to check that when a structure passed by value
is large enough to need to be passed by reference, a copy of the
original structure is passed. The callee updates the passed-in value,
and the test verifies that the caller's copy is unchanged. A similar
change was also added to the test added for bpo-20160 (that test was
passing, but the changes should guard against regressions).

Thanks to Eryk Sun for the patch.

Added code and test to check that when a structure passed by value
is large enough to need to be passed by reference, a copy of the
original structure is passed. The callee updates the passed-in value,
and the test verifies that the caller's copy is unchanged. A similar
change was also added to the test added for bpo-20160 (that test was
passing, but the changes should guard against regressions).
@vsajip vsajip changed the title Fixed bpo-29565: Corrected ctypes passing of large structs by value. Fixed bpo-29565: Corrected ctypes passing of large structs by value on Windows AMD64. Feb 19, 2017
@serhiy-storchaka serhiy-storchaka added the type-bug An unexpected behavior, bug, or error label Feb 19, 2017
@vsajip vsajip merged commit a86339b into python:master Feb 20, 2017
@vsajip vsajip deleted the fix-29565 branch February 20, 2017 00:16
vsajip added a commit that referenced this pull request Feb 22, 2017
…n Windows AMD64. (#168) (#221)

Fixed bpo-29565: Corrected ctypes passing of large structs by value.
(cherry picked from commit a86339b)
vsajip added a commit that referenced this pull request Feb 22, 2017
…n Windows AMD64. (#168) (#220)

Fixed bpo-29565: Corrected ctypes passing of large structs by value.
(cherry picked from commit a86339b)
vstinner added a commit that referenced this pull request Aug 2, 2018
…ows AMD64 (GH-168) (GH-8625)

Fixed bpo-29565: Corrected ctypes passing of large structs by value.

Added code and test to check that when a structure passed by value
is large enough to need to be passed by reference, a copy of the
original structure is passed. The callee updates the passed-in value,
and the test verifies that the caller's copy is unchanged. A similar
change was also added to the test added for bpo-20160 (that test was
passing, but the changes should guard against regressions).

(cherry picked from commit a86339b)
akruis added a commit to akruis/cpython that referenced this pull request Aug 16, 2018
… modules

Many extension modules were created by Cython versions before commit
037bcf0 and were compiled with regular C-Python. These modules call
PyEval_EvalFrameEx() with a broken frame object.
This commit add code to recover a broken frame in PyEval_EvalFrameEx().
akruis added a commit to akruis/cpython that referenced this pull request Aug 16, 2018
… modules

Many extension modules were created by Cython versions before commit
037bcf0 and were compiled with regular C-Python. These modules call
PyEval_EvalFrameEx() with a broken frame object.
This commit add code to recover a broken frame in PyEval_EvalFrameEx().
akruis added a commit to akruis/cpython that referenced this pull request Aug 18, 2018
… modules

Add a test case for a pathological situation.
akruis added a commit to akruis/cpython that referenced this pull request Aug 18, 2018
… modules

Add a test case for a pathological situation.
akruis added a commit to akruis/cpython that referenced this pull request Sep 1, 2018
… modules

Add another test case for a pathological situation.
akruis added a commit to akruis/cpython that referenced this pull request Sep 3, 2018
… modules

Add another test case for a pathological situation.
akruis pushed a commit to akruis/cpython that referenced this pull request Sep 11, 2018
… modules (python#170)

Many extension modules were created by Cython versions before commit
037bcf0 and were compiled with regular C-Python. These modules call
PyEval_EvalFrameEx() with a broken frame object.
This commit add code to recover a broken frame in PyEval_EvalFrameEx().

(cherry picked from commit f9094d2)
akruis pushed a commit to akruis/cpython that referenced this pull request Oct 14, 2018
… modules (python#170)

Many extension modules were created by Cython versions before commit
037bcf0 and were compiled with regular C-Python. These modules call
PyEval_EvalFrameEx() with a broken frame object.
This commit add code to recover a broken frame in PyEval_EvalFrameEx().
akruis pushed a commit to akruis/cpython that referenced this pull request Feb 18, 2019
… modules (python#169)

Many extension modules were created by Cython versions before commit
037bcf0 and were compiled with regular C-Python. These modules call
PyEval_EvalFrameEx() with a broken frame object.
This commit add code to recover a broken frame in PyEval_EvalFrameEx().
isidentical added a commit to isidentical/cpython that referenced this pull request Oct 15, 2021
jaraco pushed a commit that referenced this pull request Dec 2, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type-bug An unexpected behavior, bug, or error

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants

Morty Proxy This is a proxified and sanitized view of the page, visit original site.