mirror of
https://github.com/python/cpython.git
synced 2025-08-30 21:48:47 +00:00
* Configure.py: use #!/usr/local/bin/python
* posixmodule.c: move extern function declarations to top * listobject.c: cmp() arguments must be void* if __STDC__ * Makefile, allobjects.h, panelmodule.c, modsupport.c: get rid of strdup() -- it is a portability risk * Makefile: enclosed ranlib command in parentheses for Sequent Make which aborts if the command is not found even if '-' is present * timemodule.c: time() returns a floating point number, in microsecond precision if BSD_TIME is defined.
This commit is contained in:
parent
349f2b516b
commit
a2b7f40513
6 changed files with 47 additions and 22 deletions
|
@ -46,17 +46,20 @@ initmodule(name, methods)
|
|||
{
|
||||
object *m, *d, *v;
|
||||
struct methodlist *ml;
|
||||
char namebuf[256];
|
||||
char *namebuf;
|
||||
if ((m = add_module(name)) == NULL) {
|
||||
fprintf(stderr, "initializing module: %s\n", name);
|
||||
fatal("can't create a module");
|
||||
}
|
||||
d = getmoduledict(m);
|
||||
for (ml = methods; ml->ml_name != NULL; ml++) {
|
||||
namebuf = NEW(char, strlen(name) + strlen(ml->ml_name) + 2);
|
||||
if (namebuf == NULL)
|
||||
fatal("out of mem for method name");
|
||||
sprintf(namebuf, "%s.%s", name, ml->ml_name);
|
||||
v = newmethodobject(strdup(namebuf), ml->ml_meth,
|
||||
v = newmethodobject(namebuf, ml->ml_meth,
|
||||
(object *)NULL, ml->ml_varargs);
|
||||
/* XXX The strdup'ed memory is never freed */
|
||||
/* XXX The malloc'ed memory in namebuf is never freed */
|
||||
if (v == NULL || dictinsert(d, ml->ml_name, v) != 0) {
|
||||
fprintf(stderr, "initializing module: %s\n", name);
|
||||
fatal("can't initialize module");
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue