Skip to content

Commit c7c01ab

Browse files
authored
bpo-38922: Raise code.__new__ audit event when code object replace() is called (GH-17394)
1 parent 0b41a92 commit c7c01ab

File tree

2 files changed

+9
-0
lines changed

2 files changed

+9
-0
lines changed
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
Calling ``replace`` on a code object now raises the ``code.__new__`` audit
2+
event.

Objects/codeobject.c

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -641,6 +641,13 @@ code_replace_impl(PyCodeObject *self, int co_argcount,
641641

642642
#undef CHECK_INT_ARG
643643

644+
if (PySys_Audit("code.__new__", "OOOiiiiii",
645+
co_code, co_filename, co_name, co_argcount,
646+
co_posonlyargcount, co_kwonlyargcount, co_nlocals,
647+
co_stacksize, co_flags) < 0) {
648+
return NULL;
649+
}
650+
644651
return (PyObject *)PyCode_NewWithPosOnlyArgs(
645652
co_argcount, co_posonlyargcount, co_kwonlyargcount, co_nlocals,
646653
co_stacksize, co_flags, (PyObject*)co_code, co_consts, co_names,

0 commit comments

Comments
 (0)