]> granicus.if.org Git - python/commitdiff
PyImport_AppendInittab() took a char * as a first argument even though that
authorBrett Cannon <bcannon@gmail.com>
Thu, 2 Apr 2009 03:17:39 +0000 (03:17 +0000)
committerBrett Cannon <bcannon@gmail.com>
Thu, 2 Apr 2009 03:17:39 +0000 (03:17 +0000)
string was stored beyond the life of the call. Changed the signature to be
const char * to help make this point.

Closes issue #1419652.

Doc/c-api/import.rst
Misc/NEWS
Python/import.c

index c4816f5ed9909ef5d90ef2f7709b495cedf1af9d..bed6089dde4970080d0fedf79c43cb673d23cdc3 100644 (file)
@@ -232,7 +232,7 @@ Importing Modules
    tricks with this to provide a dynamically created collection of frozen modules.
 
 
-.. cfunction:: int PyImport_AppendInittab(char *name, void (*initfunc)(void))
+.. cfunction:: int PyImport_AppendInittab(const char *name, void (*initfunc)(void))
 
    Add a single module to the existing table of built-in modules.  This is a
    convenience wrapper around :cfunc:`PyImport_ExtendInittab`, returning ``-1`` if
index 6bf6dcd6815c2e8d277e455a9b1b843cf2049d66..036a061c84c7249de0838761fcc7cf3371e9f338 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -692,6 +692,9 @@ Build
 C-API
 -----
 
+- Issue #1419652: Change the first argument to PyImport_AppendInittab() to
+  ``const char *`` as the string is stored beyond the call.
+
 - Some PyBytes_* aliases have been removed because they don't exist in 3.x.
 
 - Issue #5175: PyLong_AsUnsignedLongLong now raises OverflowError
index 98b8dceba4311a5017cee2bbd8f7be97feb6c270..b39cb18f23e5c7e556495a37c396a1854a0750b3 100644 (file)
@@ -3376,7 +3376,7 @@ PyImport_ExtendInittab(struct _inittab *newtab)
 /* Shorthand to add a single entry given a name and a function */
 
 int
-PyImport_AppendInittab(char *name, void (*initfunc)(void))
+PyImport_AppendInittab(const char *name, void (*initfunc)(void))
 {
        struct _inittab newtab[2];