bpo-38922: Raise code.__new__ audit event when code object replace() is called (GH-17394)
(cherry picked from commit c7c01ab1e5415b772c68e15f1aba51e520010830)
Co-authored-by: Steve Dower <steve.dower@python.org>
diff --git a/Objects/codeobject.c b/Objects/codeobject.c
index 39bf6fc..f0b62ec 100644
--- a/Objects/codeobject.c
+++ b/Objects/codeobject.c
@@ -641,6 +641,13 @@
#undef CHECK_INT_ARG
+ if (PySys_Audit("code.__new__", "OOOiiiiii",
+ co_code, co_filename, co_name, co_argcount,
+ co_posonlyargcount, co_kwonlyargcount, co_nlocals,
+ co_stacksize, co_flags) < 0) {
+ return NULL;
+ }
+
return (PyObject *)PyCode_NewWithPosOnlyArgs(
co_argcount, co_posonlyargcount, co_kwonlyargcount, co_nlocals,
co_stacksize, co_flags, (PyObject*)co_code, co_consts, co_names,