From: <no...@so...> - 2002-03-24 23:04:53
|
Bugs item #529816, was opened at 2002-03-14 02:22 You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=110894&aid=529816&group_id=10894 Category: 19. [interp] Group: = 8.3.3 Status: Pending Resolution: Fixed Priority: 5 Submitted By: Nobody/Anonymous (nobody) Assigned to: miguel sofer (msofer) Summary: TclInterp crashed in Tcl_DeleteInterp Initial Comment: Hallo all, i have build an windows (vc6.0) application, which starts an internel Tcl_Interp. From the windows application i start myApp_Init generated from swig. I tested only a single function wrapped by swig and this function works. I now close the sub window from tk and got the following messages in my debugger: abort() line 44 + 7 bytes Tcl_PanicVA(char * 0x002de23c, char * 0x00b9ff18) line 95 Tcl_Panic(char * 0x002de23c) line 121 + 13 bytes Tcl_GetStringFromObj(Tcl_Obj * 0x00ba54a8, int * 0x00b9ff18) line 741 + 19 bytes TclReleaseLiteral(Tcl_Interp * 0x00150d78, Tcl_Obj * 0x00ba54a8) line 683 + 13 bytes TclDeleteLiteralTable(Tcl_Interp * 0x00150d78, LiteralTable * 0x00150e3c) line 123 + 16 bytes DeleteInterpProc(Tcl_Interp * 0x00150d78) line 1075 + 18 bytes Tcl_EventuallyFree(int * 0x00150d78, void (char *)* 0x002466fb DeleteInterpProc(Tcl_Interp *)) line 313 + 7 bytes Tcl_DeleteInterp(Tcl_Interp * 0x00150d78) line 901 + 14 bytes TkInterpMain(void * 0x00000000) line 445 + 13 bytes KERNEL32! 77e837cd() ********************************************* In the source of Tcl I found: ********************************************* char * Tcl_GetStringFromObj(objPtr, lengthPtr) [SNIP] if (objPtr->typePtr->updateStringProc == NULL) { panic("UpdateStringProc should not be invoked for type %s", objPtr->typePtr->name); } where the variable is: ********************************************* objPtr->typePtr->name 0x002da04c "cmdName" ********************************************* I use tcl/tk 8.3.3 on win2k, also compiled by vc6.0 and the version swigwin 1.3.11. I hope this helps. Can you send me a short message what your opinion for that problem is? Regards Klaus ---------------------------------------------------------------------- Comment By: Nobody/Anonymous (nobody) Date: 2002-03-24 14:17 Message: Logged In: NO Found my problem now, during script execution a pointer to Tcl_Obj was killed by my! application. By cleaning the memmory the tcl_interp crashes. After debugging and correction of my bug the interpreter leaves fine. Sorry for the bug report, and thanks for your help, it was "only" a memory leak in my application. :-( To find this terrible bug i moved the program to linux and use a special malloc-lib to control the memory usage and found that terrible crasher feature. So lets thank also Tux for help. Thanks Klaus ---------------------------------------------------------------------- Comment By: Jeffrey Hobbs (hobbs) Date: 2002-03-22 16:04 Message: Logged In: YES user_id=72656 moving this to pending fixed, as per miguel's note. It may also be that Tcl_FindExecutable needs to be called, but I don't see any more code sample. ---------------------------------------------------------------------- Comment By: miguel sofer (msofer) Date: 2002-03-14 04:00 Message: Logged In: YES user_id=148712 Mhhh ... looks like bug #467523 to me. That bug has been fixed last october, I would imagine that your problems will disppear if you upgrade to Tcl8.3.4 (or apply the patch enclosed in the bug report). Please do notify us here of the result. ---------------------------------------------------------------------- You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=110894&aid=529816&group_id=10894 |