Itcl - the [incr Tcl] extension

Ticket Change Details
Login
Overview

Artifact ID: 8958454de7cd1f5ad711f06ac3edf151f9632473
Ticket: abeae90b4c3c1a307a86653cdee22796228d6e2b
itcl::widget basics lead to segfault
User & Date: dgp 2015-07-31 19:34:33
Changes

  1. foundin changed to: "4.0.3 and trunk"
  2. icomment:
    $ make gdb
    ...
    (gdb) run
    ...
    % package require Itcl 4
    4.0.3
    % itcl::widget W {}
    ::W
    % W create .w
    
    Program received signal SIGSEGV, Segmentation fault.
    0x0000000000570400 in TclPtrSetVar (interp=0x81e6e0, varPtr=0xb49fc0, 
        arrayPtr=0x0, part1Ptr=0xb4f3e0, part2Ptr=0x0, newValuePtr=0xb4e990, 
        flags=512, index=-1) at /home/dgp/fossil/tcl/generic/tclVar.c:1864
    1864                TclDecrRefCount(oldValuePtr);       /* Discard old value. */
    Missing separate debuginfos, use: debuginfo-install expat-2.1.0-8.el7.x86_64 fontconfig-2.10.95-7.el7.x86_64 freetype-2.4.11-10.el7_1.1.x86_64 glibc-2.17-78.el7.x86_64 libX11-1.6.0-2.1.el7.x86_64 libXScrnSaver-1.2.2-6.1.el7.x86_64 libXau-1.0.8-2.1.el7.x86_64 libXext-1.3.2-2.1.el7.x86_64 libXft-2.3.1-5.1.el7.x86_64 libXrender-0.9.8-2.1.el7.x86_64 libxcb-1.9-5.el7.x86_64 zlib-1.2.7-13.el7.x86_64
    (gdb) bt
    #0  0x0000000000570400 in TclPtrSetVar (interp=0x81e6e0, varPtr=0xb49fc0, 
        arrayPtr=0x0, part1Ptr=0xb4f3e0, part2Ptr=0x0, newValuePtr=0xb4e990, 
        flags=512, index=-1) at /home/dgp/fossil/tcl/generic/tclVar.c:1864
    #1  0x00000000004e8fbe in TEBCresume (data=0xb4f478, interp=0x81e6e0, result=0)
        at /home/dgp/fossil/tcl/generic/tclExecute.c:3573
    #2  0x0000000000414c74 in TclNRRunCallbacks (interp=0x81e6e0, result=0, 
        rootPtr=0xb4eae0) at /home/dgp/fossil/tcl/generic/tclBasic.c:4393
    #3  0x00000000004143de in Tcl_EvalObjv (interp=0x81e6e0, objc=5, 
        objv=0x9fc950, flags=0) at /home/dgp/fossil/tcl/generic/tclBasic.c:4123
    #4  0x00007fffefb6c818 in ItclCreateObject ()
       from /home/dgp/x86_64/linuxoldld/lib/itcl4.0.3/libitcl4.0.3.so
    #5  0x0000000000414c74 in TclNRRunCallbacks (interp=0x81e6e0, result=0, 
        rootPtr=0xb4ea20) at /home/dgp/fossil/tcl/generic/tclBasic.c:4393
    #6  0x00007fffefb4f0c6 in ItclClassCreateObject ()
       from /home/dgp/x86_64/linuxoldld/lib/itcl4.0.3/libitcl4.0.3.so
    #7  0x00007fffefb491df in CallCreateObject ()
       from /home/dgp/x86_64/linuxoldld/lib/itcl4.0.3/libitcl4.0.3.so
    #8  0x0000000000414c74 in TclNRRunCallbacks (interp=0x81e6e0, result=0, 
        rootPtr=0xb4ea20) at /home/dgp/fossil/tcl/generic/tclBasic.c:4393
    #9  0x00007fffefb486cb in PrepareCreateObject ()
       from /home/dgp/x86_64/linuxoldld/lib/itcl4.0.3/libitcl4.0.3.so
    #10 0x00007fffefb48921 in ItclBiClassUnknownCmd ()
       from /home/dgp/x86_64/linuxoldld/lib/itcl4.0.3/libitcl4.0.3.so
    #11 0x0000000000414be6 in Dispatch (data=0xb4e938, interp=0x81e6e0, result=0)
        at /home/dgp/fossil/tcl/generic/tclBasic.c:4360
    #12 0x0000000000414c74 in TclNRRunCallbacks (interp=0x81e6e0, result=0, 
        rootPtr=0x0) at /home/dgp/fossil/tcl/generic/tclBasic.c:4393
    #13 0x000000000041775e in TclEvalObjEx (interp=0x81e6e0, objPtr=0x100000003, 
        flags=131072, invoker=0x0, word=0)
        at /home/dgp/fossil/tcl/generic/tclBasic.c:5959
    #14 0x00000000004176f7 in Tcl_EvalObjEx (interp=0x81e6e0, objPtr=0x100000003, 
        flags=131072) at /home/dgp/fossil/tcl/generic/tclBasic.c:5940
    #15 0x00000000005bd827 in Tcl_RecordAndEvalObj (interp=0x81e6e0, 
        cmdPtr=0x8646e0, flags=131072)
        at /home/dgp/fossil/tcl/generic/tclHistory.c:190
    #16 0x000000000053233a in StdinProc (clientData=0x7fffffffd430, mask=2)
        at /home/dgp/fossil/tcl/generic/tclMain.c:819
    #17 0x0000000000517e11 in Tcl_NotifyChannel (channel=0x881110, mask=2)
        at /home/dgp/fossil/tcl/generic/tclIO.c:8315
    #18 0x000000000058a28b in FileHandlerEventProc (evPtr=0x9fd290, flags=-3)
        at /home/dgp/fossil/tcl/unix/tclUnixNotfy.c:765
    #19 0x0000000000539082 in Tcl_ServiceEvent (flags=-3)
        at /home/dgp/fossil/tcl/generic/tclNotify.c:670
    #20 0x00000000005394be in Tcl_DoOneEvent (flags=-3)
        at /home/dgp/fossil/tcl/generic/tclNotify.c:967
    #21 0x00007fffef82f9e2 in Tk_MainLoop ()
       from /home/dgp/x86_64/linuxoldld/lib/libtk8.6.so
    #22 0x0000000000531ead in Tcl_MainEx (argc=-1, argv=0x7fffffffd630, 
        appInitProc=0x40f236 <Tcl_AppInit>, interp=0x81e6e0)
        at /home/dgp/fossil/tcl/generic/tclMain.c:573
    #23 0x000000000040f22f in main (argc=1, argv=0x7fffffffd628)
        at /home/dgp/fossil/tcl/unix/tclAppInit.c:84
    
  3. login: "dgp"
  4. mimetype: "text/x-fossil-plain"
  5. severity changed to: "Critical"
  6. status changed to: "Open"
  7. title changed to: "itcl::widget basics lead to segfault"
  8. type changed to: "Code_Defect"