From: Sjoerd Mullender Date: Tue, 4 Apr 1995 11:47:41 +0000 (+0000) Subject: Use mappinglookup instead of dictlookup for looking up __builtin__. X-Git-Tag: v1.2~36 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=5b7f3cd3e17b96d3ef505cc46df169caab06c784;p=thirdparty%2FPython%2Fcpython.git Use mappinglookup instead of dictlookup for looking up __builtin__. --- diff --git a/Objects/frameobject.c b/Objects/frameobject.c index beb4c2db6454..db02924b62f6 100644 --- a/Objects/frameobject.c +++ b/Objects/frameobject.c @@ -138,8 +138,14 @@ newframeobject(back, code, globals, locals, owner, nvalues, nblocks) int nvalues; int nblocks; { + static object *builtin_object; frameobject *f; object *builtins; + if (builtin_object == NULL) { + builtin_object = newstringobject("__builtins__"); + if (builtin_object == NULL) + return NULL; + } if ((back != NULL && !is_frameobject(back)) || code == NULL || !is_codeobject(code) || globals == NULL || !is_dictobject(globals) || @@ -148,7 +154,7 @@ newframeobject(back, code, globals, locals, owner, nvalues, nblocks) err_badcall(); return NULL; } - builtins = dictlookup(globals, "__builtins__"); + builtins = mappinglookup(globals, builtin_object); if (builtins != NULL && is_moduleobject(builtins)) builtins = getmoduledict(builtins); if (builtins == NULL || !is_mappingobject(builtins)) {