Posted to tcl by apw at Mon Aug 20 20:21:10 GMT 2007view pretty

tclOOMethod.c
PushMethodCallFrame
     fdPtr->efi.fields[0].proc = NULL;
     fdPtr->efi.fields[0].clientData = fdPtr->nameObj;
     if (pmPtr->gfivProc != NULL) {
+       fdPtr->pni.method = NULL;
        fdPtr->efi.fields[1].proc = pmPtr->gfivProc;
        fdPtr->efi.fields[1].clientData = pmPtr;
     } else {
        fdPtr->efi.fields[1].proc = RenderDeclarerName;
        fdPtr->efi.fields[1].clientData = &fdPtr->pni;
     }
-    if (Tcl_MethodDeclarerObject(fdPtr->pni.method) != NULL) {
-       fdPtr->efi.fields[1].name = "object";
-    } else {
-       fdPtr->efi.fields[1].name = "class";
+    if (fdPtr->pni.method != NULL) {
+        if (Tcl_MethodDeclarerObject(fdPtr->pni.method) != NULL) {
+           fdPtr->efi.fields[1].name = "object";
+        } else {
+           fdPtr->efi.fields[1].name = "class";
+        }
     }

Comments

Posted by dkf at Mon Aug 20 20:35:00 GMT 2007 [text] [code]

fixed