[Issue 24458] Mac M3 associative array keys on std.net.curl gets overwritten
    d-bugmail at puremagic.com 
    d-bugmail at puremagic.com
       
    Wed Mar 27 16:35:00 UTC 2024
    
    
  
https://issues.dlang.org/show_bug.cgi?id=24458
Steven Schveighoffer <schveiguy at gmail.com> changed:
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |schveiguy at gmail.com
           See Also|                            |https://issues.dlang.org/sh
                   |                            |ow_bug.cgi?id=2954
--- Comment #2 from Steven Schveighoffer <schveiguy at gmail.com> ---
Note that the root cause here is the use of `toLower` on the header key. Since
`toLower` will avoid allocating a new array if the input is already lower case,
the slice of the original curl buffer is returned (if e.g. it's `content-type`
instead of `Content-type`). This means you store a slice to a reusable buffer
from curl as the string key.
For the reason why this is allowed, when `const(char)[]` does not convert to
`string`, see issue 2954.
--
    
    
More information about the Digitalmars-d-bugs
mailing list