Details
-
Bug
-
Status: Closed
-
Blocker
-
Resolution: Fixed
-
None
-
Patch Available
Description
This was introduced recently
// To reproduce
// Save this file as "x.thrift", then compile with
// "thrift --gen html x.thrift"
//
// Here is my reproduction with master and 0.9.1
// $ /home/nhed/Projects/thrift/compiler/cpp/thrift --version
// Thrift version 1.0.0-dev
//
// $ /home/nhed/Projects/thrift/compiler/cpp/thrift --gen html x.thrift
// Segmentation fault (core dumped)
//
// $ thrift --version
// Thrift version 0.9.1
//
// $ thrift --gen html x.thrift
// <no issue>
struct myMapping
{ 1: required map<i32, list<i32> > theMap }struct myStruct { 1: required myMapping defMap = {'theMap' :
{ 44 : [ 5 ] }} }
Notice that the value of "type" is not a valid pointer in the top stack frame
#0 t_html_generator::print_const_value (this=0x875810, type=0x20, tvalue=<value optimized out>) at src/generate/t_html_generator.cc:636
#1 0x0000000000540d7d in t_html_generator::print_const_value (this=0x875810, type=0x875030, tvalue=<value optimized out>) at src/generate/t_html_generator.cc:621
#2 0x0000000000540d7d in t_html_generator::print_const_value (this=0x875810, type=0x860170, tvalue=<value optimized out>) at src/generate/t_html_generator.cc:621
#3 0x00000000005411aa in t_html_generator::generate_struct (this=0x875810, tstruct=0x875120) at src/generate/t_html_generator.cc:808
#4 0x0000000000544a01 in t_html_generator::generate_program (this=0x875810) at src/generate/t_html_generator.cc:302
#5 0x00000000004057b9 in generate (program=0x85f770, generator_strings=std::vector of length 1, capacity 1 =
) at src/main.cc:1013
#6 0x0000000000408610 in main (argc=4, argv=0x7fffffffe728) at src/main.cc:1197