musl - musl - an implementation of the standard library for Linux-based systems

index : musl
musl - an implementation of the standard library for Linux-based systems
summary refs log tree commit diff
path: root/src/thread/vmlock.c
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2012年08月17日 16:53:09 -0400
committerRich Felker <dalias@aerifal.cx>2012年08月17日 16:53:09 -0400
commit11458e5b098319cf3e2d05c8cbaa74d58db740e3 (patch)
tree027decb697492c454300b4cf7f72bff5c5f55e0e /src/thread/vmlock.c
parentdc82ee4e30ec0eae367f7ab076a7325b4d858dd5 (diff)
downloadmusl-11458e5b098319cf3e2d05c8cbaa74d58db740e3.tar.gz
fix float parsing logic for long decimal expansions
this affects at least the case of very long inputs, but may also affect shorter inputs that become long due to growth while upscaling. basically, the logic for the circular buffer indices of the initial base-10^9 digit and the slot one past the final digit, and for simplicity of the loop logic, assumes an invariant that they're not equal. the upscale loop, which can increase the length of the base-10^9 representation, attempted to preserve this invariant, but was actually only ensuring that the end index did not loop around past the start index, not that the two never become equal. the main (only?) effect of this bug was that subsequent logic treats the excessively long number as having no digits, leading to junk results.
Diffstat (limited to 'src/thread/vmlock.c')
0 files changed, 0 insertions, 0 deletions
generated by cgit v1.2.1 (git 2.18.0) at 2025年10月06日 21:58:10 +0000

AltStyle によって変換されたページ (->オリジナル) /