Project

General

Profile

Bug #5647

Possible use of uninitialized value in Init_bigdecimal

Added by brixen (Brian Shirai) over 7 years ago. Updated about 7 years ago.

Status:
Closed
Priority:
Normal
Target version:
-
ruby -v:
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-darwin10.8.0]
Backport:
[ruby-core:41133]

Description

I see the following call chain in bigdecimal.c

Init_bigdecimal -> VpInit -> VpAlloc -> VpGetPrecLimit -> rb_thread_local_aref with id_BigDecimal_precision_limit

The call to VpInit occurs before the call to set the value of id_BigDecimal_precision_limit in Init_bigdecimal.

So it appears that a thread local is set with the key of an uninitialized C value, if I'm following correctly.

Thanks,
Brian


Related issues

Has duplicate Ruby master - Bug #6406: Ruby crashes with Segmentation faultClosed05/06/2012Actions

History

Updated by mrkn (Kenta Murata) over 7 years ago

  • Assignee set to mrkn (Kenta Murata)
#2

Updated by shyouhei (Shyouhei Urabe) over 7 years ago

  • Status changed from Open to Assigned

Updated by mrkn (Kenta Murata) about 7 years ago

  • Status changed from Assigned to Closed

This is fixed by r35555

Also available in: Atom PDF