Posted to tcl by cgm at Wed May 27 07:56:59 GMT 2026view raw

  1. More GDB:
  2.  
  3. (gdb) up
  4. #1 0x00007f79072bab7b in TlsChannelHandlerTimer (clientData=0x555a3ba32590) at ./generic/tlsIO.c:1047
  5. 1047 if (Tcl_OutputBuffered(statePtr->self) || BIO_wpending(statePtr->bio)) {
  6.  
  7. (gdb) p statePtr->self
  8. $3 = (Tcl_Channel) 0x555a3a605240
  9.  
  10. (gdb) x/4 0x555a3a605240
  11. 0x555a3a605240: 0x0 0x2
  12. 0x555a3a605250: 0x2 0x1
  13.  
  14. So 0x555a3a605240 should contain a Channel struct. The first element of that should be `struct ChannelState *state` but that is null, so when Tcl_OutputBuffered tries to dereference it we get a crash.

Add a comment

Please note that this site uses the meta tags nofollow,noindex for all pages that contain comments.
Items are closed for new comments after 1 week