Skip to content

Commit 21f6b4d

Browse files
authored
pythongh-94512: Fix forced arg format in AC-processed msvcrtmodule (pythonGH-94514)
1 parent a391b74 commit 21f6b4d

File tree

2 files changed

+28
-6
lines changed

2 files changed

+28
-6
lines changed

PC/clinic/msvcrtmodule.c.h

+19-5
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

PC/msvcrtmodule.c

+9-1
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,14 @@ class HANDLE_converter(CConverter):
3838
type = 'void *'
3939
format_unit = '"_Py_PARSE_UINTPTR"'
4040
41+
def parse_arg(self, argname, displayname):
42+
return """
43+
{paramname} = PyLong_AsVoidPtr({argname});
44+
if (!{paramname} && PyErr_Occurred()) {{{{
45+
goto exit;
46+
}}}}
47+
""".format(argname=argname, paramname=self.parser_name)
48+
4149
class HANDLE_return_converter(CReturnConverter):
4250
type = 'void *'
4351
@@ -66,7 +74,7 @@ class wchar_t_return_converter(CReturnConverter):
6674
data.return_conversion.append(
6775
'return_value = PyUnicode_FromOrdinal(_return_value);\n')
6876
[python start generated code]*/
69-
/*[python end generated code: output=da39a3ee5e6b4b0d input=d102511df3cda2eb]*/
77+
/*[python end generated code: output=da39a3ee5e6b4b0d input=1e8e9fa3538ec08f]*/
7078

7179
/*[clinic input]
7280
module msvcrt

0 commit comments

Comments
 (0)