Tcl Source Code

Ticket Change Details
Login
Overview

Artifact ID: 3b4d6095b9e4462e262987e112228e5ec758214cd4ca4422803577468f4b5865
Ticket: cc1e91552c0ca1817292d951f8c694b28c2b2251
Regression in list expansion
User & Date: sebres 2019-01-11 15:25:07
Changes

  1. closedate changed to: "2458495.14244573"
  2. closer changed to: "sebres"
  3. icomment:
    > Your assumption that TclListObjGetElements() always results in a list object is wrong: In case of an empty string representation the empty string is returned. 
    
    You are right Jan, Thx.
    <pre>
    #define [/artifact?udc=1&name=688b67d0c051138d&ln=2403-2406&r=core-8-6-branch|TclListObjGetElements](interp, listPtr, objcPtr, objvPtr) \
        (((listPtr)->typePtr == &tclListType) \
    	    ? ((ListObjGetElements((listPtr), *(objcPtr), *(objvPtr))), TCL_OK)\
    	    : Tcl_ListObjGetElements((interp), (listPtr), (objcPtr), (objvPtr)))
    </pre>
    How one can see here, the object either already a list or (my assumtion was) it will be to list immeadiatelly after invocation of Tcl_ListObjGetElements.
    
    Just I really overlooked this block in scope it is not a list - [/artifact/0b7c55ad693411b7?r=core-8-6-branch&ln=435-439|Tcl_ListObjGetElements].
    
    Thank you again. 
    I'll try to construct a test-case for exacly this situation.
    
  4. login: "sebres"
  5. mimetype: "text/x-fossil-wiki"