[New-bugs-announce] [issue34603] ctypes On Windows: error calling C function that returns a struc containing 3 bools
MatteoL
report at bugs.python.org
Fri Sep 7 07:15:17 EDT 2018
New submission from MatteoL <mlovato at gmail.com>:
Marshalling the following C structure with ctypes in Windows (compiled with VS2015) is not working correctly.
As you can see, in the simple demo program I attached, the integer I pass as a parameter gets somehow corrupted. I use cdecl calling convention.
The corruption happens only if the returned structure contains 3 booleans, if I add a fourth bool to the structure than I get expected results.
In linux (compiling with Gcc) the same code (with 3 booleans) work as expected.
typedef uint64_t CustomHandle;
typedef struct
{
bool first;
bool second;
bool third;
} Flags;
CustomHandle GetHandle();
Flags GetFlags(CustomHandle handle);
As already mention I attached all the files to reproduce the issue with the related cmake file
----------
components: ctypes
files: MarshallingTest.zip
messages: 324732
nosy: mattneri
priority: normal
severity: normal
status: open
title: ctypes On Windows: error calling C function that returns a struc containing 3 bools
type: behavior
versions: Python 3.4, Python 3.5, Python 3.6, Python 3.7
Added file: https://bugs.python.org/file47789/MarshallingTest.zip
_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue34603>
_______________________________________
More information about the New-bugs-announce
mailing list