summaryrefslogtreecommitdiffstats
path: root/Objects/classobject.c
diff options
context:
space:
mode:
Diffstat (limited to 'Objects/classobject.c')
-rw-r--r--Objects/classobject.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/Objects/classobject.c b/Objects/classobject.c
index d7be15a..5776898 100644
--- a/Objects/classobject.c
+++ b/Objects/classobject.c
@@ -43,8 +43,14 @@ newclassobject(bases, dict, name)
#endif
classobject *op, *dummy;
static object *getattrstr, *setattrstr, *delattrstr;
- if (dictlookup(dict, "__doc__") == NULL) {
- if (dictinsert(dict, "__doc__", None) < 0)
+ static object *docstr;
+ if (docstr == NULL) {
+ docstr= newstringobject("__doc__");
+ if (docstr == NULL)
+ return NULL;
+ }
+ if (mappinglookup(dict, docstr) == NULL) {
+ if (mappinginsert(dict, docstr, None) < 0)
return NULL;
}
if (bases == NULL) {