Tcl Source Code

View Ticket
Login
Ticket UUID: e649d9f567d765ecb0afe2446f350479d9360b1d
Title: Memory Error Tk8.6 running wish / valgrind on RHEL8.x
Type: Bug Version: 8.6
Submitter: thomas_floodeenjr Created on: 2021-09-10 13:05:55
Subsystem: 10. Objects Assigned To: fvogel
Priority: 5 Medium Severity: Important
Status: Closed Last Modified: 2021-09-10 13:25:34
Resolution: Duplicate Closed By: fvogel
    Closed on: 2021-09-10 13:25:34
Description:
This is on Red Hat 8.x:

bash-4.4$ valgrind wish
==73605== Memcheck, a memory error detector
==73605== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==73605== Using Valgrind-3.16.0 and LibVEX; rerun with -h for copyright info
==73605== Command: wish
==73605==
==73605== Invalid read of size 1
==73605== at 0x4C353E7: strcmp (vg_replace_strmem.c:847)
==73605== by 0x5F0906E: _XimUnRegisterIMInstantiateCallback (in /usr/lib64/libX11.so.6.3.0)
==73605== by 0x5EEFED4: XUnregisterIMInstantiateCallback (in /usr/lib64/libX11.so.6.3.0)
==73605== by 0x5F08F2D: _XimRegisterIMInstantiateCallback (in /usr/lib64/libX11.so.6.3.0)
==73605== by 0x5EEFE4E: XRegisterIMInstantiateCallback (in /usr/lib64/libX11.so.6.3.0)
==73605== by 0x4F399BF: TkpOpenDisplay (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EA5CD1: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EA600F: TkCreateMainWindow (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EB0F1D: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EB1491: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EA788C: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x108C0E: ??? (in /usr/bin/wish8.6)
==73605== Address 0x7cf5a80 is 0 bytes inside a block of size 9 free'd
==73605== at 0x4C3210C: free (vg_replace_malloc.c:538)
==73605== by 0x5EFF310: XSetLocaleModifiers (in /usr/lib64/libX11.so.6.3.0)
==73605== by 0x4F39606: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x4F397AF: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x5F08F2D: _XimRegisterIMInstantiateCallback (in /usr/lib64/libX11.so.6.3.0)
==73605== by 0x5EEFE4E: XRegisterIMInstantiateCallback (in /usr/lib64/libX11.so.6.3.0)
==73605== by 0x4F399BF: TkpOpenDisplay (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EA5CD1: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EA600F: TkCreateMainWindow (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EB0F1D: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EB1491: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EA788C: ??? (in /usr/lib64/libtk8.6.so)
==73605== Block was alloc'd at
==73605== at 0x4C30F0B: malloc (vg_replace_malloc.c:307)
==73605== by 0x5EFEF08: _XlcDefaultMapModifiers (in /usr/lib64/libX11.so.6.3.0)
==73605== by 0x5EFF2F9: XSetLocaleModifiers (in /usr/lib64/libX11.so.6.3.0)
==73605== by 0x4F39606: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x4F399A7: TkpOpenDisplay (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EA5CD1: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EA600F: TkCreateMainWindow (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EB0F1D: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EB1491: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EA788C: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x108C0E: ??? (in /usr/bin/wish8.6)
==73605== by 0x4E96BBC: Tk_MainEx (in /usr/lib64/libtk8.6.so)
==73605==
==73605== Invalid read of size 1
==73605== at 0x4C3540C: strcmp (vg_replace_strmem.c:847)
==73605== by 0x5F0906E: _XimUnRegisterIMInstantiateCallback (in /usr/lib64/libX11.so.6.3.0)
==73605== by 0x5EEFED4: XUnregisterIMInstantiateCallback (in /usr/lib64/libX11.so.6.3.0)
==73605== by 0x5F08F2D: _XimRegisterIMInstantiateCallback (in /usr/lib64/libX11.so.6.3.0)
==73605== by 0x5EEFE4E: XRegisterIMInstantiateCallback (in /usr/lib64/libX11.so.6.3.0)
==73605== by 0x4F399BF: TkpOpenDisplay (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EA5CD1: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EA600F: TkCreateMainWindow (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EB0F1D: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EB1491: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EA788C: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x108C0E: ??? (in /usr/bin/wish8.6)
==73605== Address 0x7cf5a81 is 1 bytes inside a block of size 9 free'd
==73605== at 0x4C3210C: free (vg_replace_malloc.c:538)
==73605== by 0x5EFF310: XSetLocaleModifiers (in /usr/lib64/libX11.so.6.3.0)
==73605== by 0x4F39606: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x4F397AF: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x5F08F2D: _XimRegisterIMInstantiateCallback (in /usr/lib64/libX11.so.6.3.0)
==73605== by 0x5EEFE4E: XRegisterIMInstantiateCallback (in /usr/lib64/libX11.so.6.3.0)
==73605== by 0x4F399BF: TkpOpenDisplay (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EA5CD1: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EA600F: TkCreateMainWindow (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EB0F1D: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EB1491: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EA788C: ??? (in /usr/lib64/libtk8.6.so)
==73605== Block was alloc'd at
==73605== at 0x4C30F0B: malloc (vg_replace_malloc.c:307)
==73605== by 0x5EFEF08: _XlcDefaultMapModifiers (in /usr/lib64/libX11.so.6.3.0)
==73605== by 0x5EFF2F9: XSetLocaleModifiers (in /usr/lib64/libX11.so.6.3.0)
==73605== by 0x4F39606: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x4F399A7: TkpOpenDisplay (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EA5CD1: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EA600F: TkCreateMainWindow (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EB0F1D: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EB1491: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x4EA788C: ??? (in /usr/lib64/libtk8.6.so)
==73605== by 0x108C0E: ??? (in /usr/bin/wish8.6)
==73605== by 0x4E96BBC: Tk_MainEx (in /usr/lib64/libtk8.6.so)
==73605==

After exiting the wish I got a summary:

% exit
==73605==
==73605== HEAP SUMMARY:
==73605== in use at exit: 2,699,434 bytes in 1,174 blocks
==73605== total heap usage: 3,630 allocs, 2,456 frees, 5,342,506 bytes allocated
==73605==
==73605== LEAK SUMMARY:
==73605== definitely lost: 53,984 bytes in 7 blocks
==73605== indirectly lost: 15,418 bytes in 153 blocks
==73605== possibly lost: 2,420,224 bytes in 141 blocks
==73605== still reachable: 209,800 bytes in 872 blocks
==73605== suppressed: 8 bytes in 1 blocks
==73605== Rerun with --leak-check=full to see details of leaked memory
==73605==
==73605== For lists of detected and suppressed errors, rerun with: -s
==73605== ERROR SUMMARY: 9 errors from 2 contexts (suppressed: 0 from 0)
User Comments: fvogel added on 2021-09-10 13:25:34:

Thanks for the report !

This is a duplicate of https://core.tcl-lang.org/tk/tktview?name=e42eef33ee, isn't it?


fvogel added on 2021-09-10 13:22:47:

Thanks for the report !

This is a duplicate of [e42eef33ee], isn't it?