Use-after-free when setting the locale
Moderate severity
GitHub Reviewed
Published
Jan 23, 2024
to the GitHub Advisory Database
•
Updated Jan 23, 2024
Description
Published to the GitHub Advisory Database
Jan 23, 2024
Reviewed
Jan 23, 2024
Last updated
Jan 23, 2024
Version 3.0.0 introduced an
AtomicStr
type, that is used to store the current locale. It stores the locale as a raw pointer to anArc<String>
. The locale can be read withAtomicStr::as_str()
.AtomicStr::as_str()
does not increment the usage counter of theArc
.If the locale is changed in one thread, another thread can have a stale -- possibly already freed -- reference to the stored string.
References