** Changed in: firefox (Ubuntu Quantal)
       Status: In Progress => Fix Committed

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to firefox in Ubuntu.
https://bugs.launchpad.net/bugs/1002590

Title:
  No crashreporter in Firefox or Thunderbird

Status in “firefox” package in Ubuntu:
  Fix Released
Status in “thunderbird” package in Ubuntu:
  In Progress
Status in “firefox” source package in Quantal:
  Fix Released
Status in “thunderbird” source package in Quantal:
  In Progress

Bug description:
  dump_syms crashes during the build when creating the breakpad symbols
  with gcc 4.7. It isn't recreatable at all on a local build, which is a
  bit of a pain.

  The stack looks like this:

  #0  0x00007ffff7320445 in __GI_raise (sig=<optimized out>) at 
../nptl/sysdeps/unix/sysv/linux/raise.c:64
          resultvar = 0
          pid = <optimized out>
          selftid = 31533
  #1  0x00007ffff7323bab in __GI_abort () at abort.c:91
          save_stage = 2
          act = {__sigaction_handler = {sa_handler = 0x3, sa_sigaction = 0x3}, 
sa_mask = {__val = {4, 140737488347766, 47, 140737341956901, 1, 
140737341961145, 3, 140737488338444, 4, 140737341956848, 1, 
                140737341965828, 3, 140737488338420, 12, 140737341965832}}, 
sa_flags = 2, sa_restorer = 0x7ffff7464608}
          sigs = {__val = {32, 0 <repeats 15 times>}}
  #2  0x00007ffff735de2e in __libc_message (do_abort=2, fmt=0x7ffff74660d0 "*** 
glibc detected *** %s: %s: 0x%s ***\n") at 
../sysdeps/unix/sysv/linux/libc_fatal.c:201
          ap = {{gp_offset = 40, fp_offset = 48, overflow_arg_area = 
0x7fffffffc770, reg_save_area = 0x7fffffffc680}}
          ap_copy = {{gp_offset = 16, fp_offset = 48, overflow_arg_area = 
0x7fffffffc770, reg_save_area = 0x7fffffffc680}}
          fd = 7
          on_2 = <optimized out>
          list = <optimized out>
          nlist = <optimized out>
          cp = <optimized out>
          written = <optimized out>
  #3  0x00007ffff7368626 in malloc_printerr (action=3, str=0x7ffff7466230 
"double free or corruption (out)", ptr=<optimized out>) at malloc.c:5007
          buf = "000055555578f900"
          cp = <optimized out>
  #4  0x000055555555b277 in deallocate (__p=<optimized out>, this=<optimized 
out>) at /usr/include/c++/4.7/ext/new_allocator.h:100
  No locals.
  #5  _M_put_node (__p=<optimized out>, this=<optimized out>) at 
/usr/include/c++/4.7/bits/stl_list.h:356
  No locals.
  #6  std::_List_base<std::pair<dwarf2reader::DwarfAttribute, 
dwarf2reader::DwarfForm>, 
std::allocator<std::pair<dwarf2reader::DwarfAttribute, dwarf2reader::DwarfForm> 
> >::_M_clear (
      this=this@entry=0x55555578f908) at /usr/include/c++/4.7/bits/list.tcc:80
          __tmp = <optimized out>
          __cur = 0x5555557880d0
  #7  0x000055555555b2b9 in ~_List_base (this=0x55555578f908, 
__in_chrg=<optimized out>) at /usr/include/c++/4.7/bits/stl_list.h:401
  No locals.
  #8  ~list (this=0x55555578f908, __in_chrg=<optimized out>) at 
/usr/include/c++/4.7/bits/stl_list.h:458
  No locals.
  #9  ~Abbrev (this=0x55555578f8f8, __in_chrg=<optimized out>)
      at 
/build/buildd/firefox-13.0~b4+build1/build-tree/mozilla/toolkit/crashreporter/google-breakpad/src/common/linux/../../common/dwarf/dwarf2reader.h:244
  No locals.
  #10 _Destroy<dwarf2reader::CompilationUnit::Abbrev> 
(__pointer=0x55555578f8f8) at /usr/include/c++/4.7/bits/stl_construct.h:95
  No locals.
  #11 __destroy<dwarf2reader::CompilationUnit::Abbrev*> (__last=0x555555790b10, 
__first=0x55555578f8f8) at /usr/include/c++/4.7/bits/stl_construct.h:105
  No locals.
  #12 _Destroy<dwarf2reader::CompilationUnit::Abbrev*> (__last=0x555555790b10, 
__first=<optimized out>) at /usr/include/c++/4.7/bits/stl_construct.h:128
  No locals.
  #13 _Destroy<dwarf2reader::CompilationUnit::Abbrev*, 
dwarf2reader::CompilationUnit::Abbrev> (__last=0x555555790b10, 
__first=<optimized out>) at /usr/include/c++/4.7/bits/stl_construct.h:155
  No locals.
  #14 ~vector (this=0x555555788090, __in_chrg=<optimized out>) at 
/usr/include/c++/4.7/bits/stl_vector.h:403
  No locals.
  #15 dwarf2reader::CompilationUnit::~CompilationUnit (this=<optimized out>, 
__in_chrg=<optimized out>)
      at 
/build/buildd/firefox-13.0~b4+build1/build-tree/mozilla/toolkit/crashreporter/google-breakpad/src/common/linux/../../common/dwarf/dwarf2reader.h:227
  No locals.
  #16 0x000055555555bb21 in (anonymous namespace)::LoadDwarf 
(dwarf_filename=..., elf_header=elf_header@entry=0x7ffff7f5c000, 
big_endian=big_endian@entry=false, module=module@entry=0x7fffffffccd0)
      at 
/build/buildd/firefox-13.0~b4+build1/build-tree/mozilla/toolkit/crashreporter/google-breakpad/src/common/linux/dump_symbols.cc:283
          reporter = <incomplete type>
          root_handler = {<dwarf2reader::RootDIEHandler> = 
{<dwarf2reader::DIEHandler> = {_vptr.DIEHandler = 0x555555786170}, <No data 
fields>}, line_reader_ = 0x7fffffffc800, cu_context_ = 0x555555789460, 
            child_context_ = 0x5555557894a0, has_source_line_info_ = true, 
source_line_offset_ = 0, 
            lines_ = {<std::_Vector_base<google_breakpad::Module::Line, 
std::allocator<google_breakpad::Module::Line> >> = {
                _M_impl = {<std::allocator<google_breakpad::Module::Line>> = 
{<__gnu_cxx::new_allocator<google_breakpad::Module::Line>> = {<No data 
fields>}, <No data fields>}, _M_start = 0x55555579db00, 
                  _M_finish = 0x55555579eba0, _M_end_of_storage = 
0x55555579fb00}}, <No data fields>}}
          die_dispatcher = <incomplete type>
          reader = {_vptr.CompilationUnit = 0x555555785d60, header_ = {length = 
15350, version = 2, abbrev_offset = 0, address_size = 8 '\b'}, 
offset_from_section_start_ = 0, 
            buffer_ = 0x7ffff7f6cc3c "\366;", buffer_length_ = 120649, 
after_header_ = 0x7ffff7f6cc47 "\001*\"", reader_ = 0x7fffffffc8c8, sections_ = 
@0x7fffffffc840, handler_ = 0x7fffffffc928, 
            abbrevs_ = 0x555555788090, string_buffer_ = 0x7ffff7f914fb 
"_ZNK8nsCOMPtrI12nsILocalFileEptEv", string_buffer_length_ = 35018}
          offset = 15354
          endianness = <optimized out>
          file_context = {filename = {static npos = <optimized out>, 
_M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = 
{<No data fields>}, <No data fields>}, 
                _M_p = 0x555555788028 
"/home/chr1s/src/firefox/mozilla-beta/obj-x86_64-unknown-linux-gnu/dist/bin/firefox"}},
 section_map = {_M_t = {
                _M_impl = 
{<std::allocator<std::_Rb_tree_node<std::pair<std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const, std::pair<char const*, 
unsigned long long> > > >> = 
{<__gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const, std::pair<char const*, 
unsigned long long> > > >> = {<No data fields>}, <No data fields>}, 
                  _M_key_compare = 
{<std::binary_function<std::basic_string<char, std::char_traits<char>, 
std::allocator<char> >, std::basic_string<char, std::char_traits<char>, 
std::allocator<char> >, bool>> = {<No data fields>}, <No data fields>}, 
_M_header = {_M_color = std::_S_red, _M_parent = 0x555555788970, _M_left = 
0x5555557881b0, _M_right = 0x555555788900}, _M_node_count = 39}}}, 
            module = 0x7fffffffccd0, file_private = 0x5555557882e0}
          sections = <optimized out>
          debug_info_section = {first = <optimized out>, second = 120649}
          debug_info_length = 120649
          byte_reader = <incomplete type>
          num_sections = <optimized out>
          section_names = <optimized out>
          line_to_module = 
{<google_breakpad::DwarfCUToModule::LineToModuleFunctor> = 
{_vptr.LineToModuleFunctor = 0x555555785830}, byte_reader_ = 0x7fffffffc8c8}
  #17 0x000055555555be87 in (anonymous namespace)::LoadSymbols (obj_file=..., 
big_endian=big_endian@entry=false, elf_header=0x7ffff7f5c000, 
read_gnu_debug_link=read_gnu_debug_link@entry=true, 
      info=info@entry=0x7fffffffcc78, module=module@entry=0x7fffffffccd0)
      at 
/build/buildd/firefox-13.0~b4+build1/build-tree/mozilla/toolkit/crashreporter/google-breakpad/src/common/linux/dump_symbols.cc:559
          loading_addr = 140737353925952
          sections = 0x7ffff7fcc540
          stab_section = <optimized out>
          dwarf_cfi_section = <optimized out>
          section_names = 0x7ffff7fcce40
          found_debug_info_section = true
          dwarf_section = <optimized out>
          eh_frame_section = <optimized out>
  #18 0x000055555555c40a in google_breakpad::WriteSymbolFile (obj_file=..., 
debug_dir=..., sym_file=0x7ffff76a1260)
      at 
/build/buildd/firefox-13.0~b4+build1/build-tree/mozilla/toolkit/crashreporter/google-breakpad/src/common/linux/dump_symbols.cc:712
          module = {name_ = {static npos = <optimized out>, _M_dataplus = 
{<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data 
fields>}, <No data fields>}, 
                _M_p = 0x555555788108 "firefox"}}, os_ = {static npos = 
<optimized out>, _M_dataplus = {<std::allocator<char>> = 
{<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>}, 
                _M_p = 0x555555788138 "Linux"}}, architecture_ = {static npos = 
<optimized out>, 
              _M_dataplus = {<std::allocator<char>> = 
{<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>}, _M_p 
= 0x555555788198 "x86_64"}}, id_ = {static npos = <optimized out>, 
              _M_dataplus = {<std::allocator<char>> = 
{<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>}, _M_p 
= 0x555555788258 "5D22B894777083103D31E72DB9C1F08E0"}}, 
            load_address_ = 4194304, files_ = {_M_t = {
                _M_impl = 
{<std::allocator<std::_Rb_tree_node<std::pair<std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const* const, 
google_breakpad::Module::File*> > >> = 
{<__gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const* const, 
google_breakpad::Module::File*> > >> = {<No data fields>}, <No data fields>}, 
_M_key_compare = {<No data fields>}, _M_header = {_M_color = std::_S_red, 
_M_parent = 0x555555799440, _M_left = 0x55555579b7f0, _M_right = 
0x55555579ac80}, _M_node_count = 42}}}, functions_ = {_M_t = {
                _M_impl = 
{<std::allocator<std::_Rb_tree_node<google_breakpad::Module::Function*> >> = 
{<__gnu_cxx::new_allocator<std::_Rb_tree_node<google_breakpad::Module::Function*>
 >> = {<No data fields>}, <No data fields>}, _M_key_compare = {<No data 
fields>}, _M_header = {_M_color = std::_S_red, _M_parent = 0x555555799260, 
_M_left = 0x55555579acc0, _M_right = 0x5555557993e0}, _M_node_count = 3}}}, 
            stack_frame_entries_ = 
{<std::_Vector_base<google_breakpad::Module::StackFrameEntry*, 
std::allocator<google_breakpad::Module::StackFrameEntry*> >> = {
                _M_impl = 
{<std::allocator<google_breakpad::Module::StackFrameEntry*>> = 
{<__gnu_cxx::new_allocator<google_breakpad::Module::StackFrameEntry*>> = {<No 
data fields>}, <No data fields>}, 
                  _M_start = 0x0, _M_finish = 0x0, _M_end_of_storage = 0x0}}, 
<No data fields>}}
          map_wrapper = {is_set_ = true, base_ = 0x7ffff7f5c000, size_ = 476754}
          file_id = {path_ = 
"/home/chr1s/src/firefox/mozilla-beta/obj-x86_64-unknown-linux-gnu/dist/bin/firefox",
 '\000' <repeats 4013 times>}
          architecture = 0x555555575e0f "x86_64"
          os = {static npos = <optimized out>, _M_dataplus = 
{<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data 
fields>}, <No data fields>}, _M_p = 0x555555788138 "Linux"}}
          id = {static npos = <optimized out>, _M_dataplus = 
{<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data 
fields>}, <No data fields>}, 
              _M_p = 0x555555788258 "5D22B894777083103D31E72DB9C1F08E0"}}
          info = {debug_dir_ = @0x7fffffffde00, debuglink_file_ = {static npos 
= <optimized out>, 
              _M_dataplus = {<std::allocator<char>> = 
{<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>}, _M_p 
= 0x7ffff7dc74d8 ""}}, has_loading_addr_ = false, 
            loading_addr_ = 4194304, loaded_file_ = {static npos = <optimized 
out>, _M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> 
= {<No data fields>}, <No data fields>}, 
                _M_p = 0x555555788028 
"/home/chr1s/src/firefox/mozilla-beta/obj-x86_64-unknown-linux-gnu/dist/bin/firefox"}},
 loaded_sections_ = {_M_t = {
                _M_impl = 
{<std::allocator<std::_Rb_tree_node<std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > > >> = 
{<__gnu_cxx::new_allocator<std::_Rb_tree_node<std::basic_string<char, 
std::char_traits<char>, std::allocator<char> > > >> = {<No data fields>}, <No 
data fields>}, 
                  _M_key_compare = 
{<std::binary_function<std::basic_string<char, std::char_traits<char>, 
std::allocator<char> >, std::basic_string<char, std::char_traits<char>, 
std::allocator<char> >, bool>> = {<No data fields>}, <No data fields>}, 
_M_header = {_M_color = std::_S_red, _M_parent = 0x5555557882b0, _M_left = 
0x5555557882b0, _M_right = 0x5555557882b0}, _M_node_count = 1}}}}
          elf_header = 0x7ffff7f5c000
          identifier = "\224\270\"]pw\020\203=1\347-\271\301", <incomplete 
sequence \360\216>
          big_endian = false
          name = {static npos = <optimized out>, _M_dataplus = 
{<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data 
fields>}, <No data fields>}, _M_p = 0x555555788108 "firefox"}}
  #19 0x000055555555a0cf in main (argc=<optimized out>, argv=<optimized out>)
      at 
/build/buildd/firefox-13.0~b4+build1/build-tree/mozilla/toolkit/crashreporter/google-breakpad/src/tools/linux/dump_syms/dump_syms.cc:49
          binary = 0x7fffffffe2a6 
"/home/chr1s/src/firefox/mozilla-beta/obj-x86_64-unknown-linux-gnu/dist/bin/firefox"
          debug_dir = {static npos = <optimized out>, _M_dataplus = 
{<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data 
fields>}, <No data fields>}, _M_p = 0x7ffff7dc74d8 ""}}

  Unfortunately, valgrind is not much help by default because dump_syms
  is statically linked (so memcheck can't hook in to malloc / free).
  However, I can do a dynamic build in a PPA and get that build to crash
  locally. In this case, I see this in valgrind:

  ==965== Invalid read of size 8
  ==965==    at 0x10F277: 
std::_List_base<std::pair<dwarf2reader::DwarfAttribute, 
dwarf2reader::DwarfForm>, 
std::allocator<std::pair<dwarf2reader::DwarfAttribute, dwarf2reader::DwarfForm> 
> >::_M_clear() (stl_list.h:358)
  ==965==    by 0x121978: 
std::_List_base<std::pair<dwarf2reader::DwarfAttribute, 
dwarf2reader::DwarfForm>, 
std::allocator<std::pair<dwarf2reader::DwarfAttribute, dwarf2reader::DwarfForm> 
> >::~_List_base() (in /home/chr1s/Desktop/buildd-dyn-gcc4.7/dump_syms)
  ==965==    by 0x120441: std::list<std::pair<dwarf2reader::DwarfAttribute, 
dwarf2reader::DwarfForm>, 
std::allocator<std::pair<dwarf2reader::DwarfAttribute, dwarf2reader::DwarfForm> 
> >::~list() (in /home/chr1s/Desktop/buildd-dyn-gcc4.7/dump_syms)
  ==965==    by 0x12047D: dwarf2reader::CompilationUnit::Abbrev::~Abbrev() (in 
/home/chr1s/Desktop/buildd-dyn-gcc4.7/dump_syms)
  ==965==    by 0x12781C: void 
std::_Destroy<dwarf2reader::CompilationUnit::Abbrev>(dwarf2reader::CompilationUnit::Abbrev*)
 (in /home/chr1s/Desktop/buildd-dyn-gcc4.7/dump_syms)
  ==965==    by 0x1260E5: void 
std::_Destroy_aux<false>::__destroy<dwarf2reader::CompilationUnit::Abbrev*>(dwarf2reader::CompilationUnit::Abbrev*,
 dwarf2reader::CompilationUnit::Abbrev*) (in 
/home/chr1s/Desktop/buildd-dyn-gcc4.7/dump_syms)
  ==965==    by 0x123A98: void 
std::_Destroy<dwarf2reader::CompilationUnit::Abbrev*>(dwarf2reader::CompilationUnit::Abbrev*,
 dwarf2reader::CompilationUnit::Abbrev*) (in 
/home/chr1s/Desktop/buildd-dyn-gcc4.7/dump_syms)
  ==965==    by 0x122626: void 
std::_Destroy<dwarf2reader::CompilationUnit::Abbrev*, 
dwarf2reader::CompilationUnit::Abbrev>(dwarf2reader::CompilationUnit::Abbrev*, 
dwarf2reader::CompilationUnit::Abbrev*, 
std::allocator<dwarf2reader::CompilationUnit::Abbrev>&) (in 
/home/chr1s/Desktop/buildd-dyn-gcc4.7/dump_syms)
  ==965==    by 0x122B1E: std::vector<dwarf2reader::CompilationUnit::Abbrev, 
std::allocator<dwarf2reader::CompilationUnit::Abbrev> 
>::_M_insert_aux(__gnu_cxx::__normal_iterator<dwarf2reader::CompilationUnit::Abbrev*,
 std::vector<dwarf2reader::CompilationUnit::Abbrev, 
std::allocator<dwarf2reader::CompilationUnit::Abbrev> > >, 
dwarf2reader::CompilationUnit::Abbrev const&) (in 
/home/chr1s/Desktop/buildd-dyn-gcc4.7/dump_syms)
  ==965==    by 0x121BFB: std::vector<dwarf2reader::CompilationUnit::Abbrev, 
std::allocator<dwarf2reader::CompilationUnit::Abbrev> 
>::push_back(dwarf2reader::CompilationUnit::Abbrev const&) (in 
/home/chr1s/Desktop/buildd-dyn-gcc4.7/dump_syms)
  ==965==    by 0x119E9A: dwarf2reader::CompilationUnit::ReadAbbrevs() (in 
/home/chr1s/Desktop/buildd-dyn-gcc4.7/dump_syms)
  ==965==    by 0x11A7D9: dwarf2reader::CompilationUnit::Start() (in 
/home/chr1s/Desktop/buildd-dyn-gcc4.7/dump_syms)
  ==965==    by 0x10FB10: (anonymous namespace)::LoadDwarf(std::string const&, 
Elf64_Ehdr const*, bool, google_breakpad::Module*) (dump_symbols.cc:282)
  ==965==    by 0x10FE86: (anonymous namespace)::LoadSymbols(std::string 
const&, bool, Elf64_Ehdr*, bool, (anonymous namespace)::LoadSymbolsInfo*, 
google_breakpad::Module*) (dump_symbols.cc:559)
  ==965==    by 0x110409: google_breakpad::WriteSymbolFile(std::string const&, 
std::string const&, _IO_FILE*) (dump_symbols.cc:712)
  ==965==    by 0x10E0CE: main (dump_syms.cc:49)
  ==965==  Address 0x5c1f660 is 0 bytes after a block of size 64 alloc'd
  ==965==    at 0x4C2B1C7: operator new(unsigned long) (in 
/usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
  ==965==    by 0x126589: 
__gnu_cxx::new_allocator<dwarf2reader::CompilationUnit::Abbrev>::allocate(unsigned
 long, void const*) (in /home/chr1s/Desktop/buildd-dyn-gcc4.7/dump_syms)
  ==965==    by 0x124674: 
std::_Vector_base<dwarf2reader::CompilationUnit::Abbrev, 
std::allocator<dwarf2reader::CompilationUnit::Abbrev> >::_M_allocate(unsigned 
long) (in /home/chr1s/Desktop/buildd-dyn-gcc4.7/dump_syms)
  ==965==    by 0x122A42: std::vector<dwarf2reader::CompilationUnit::Abbrev, 
std::allocator<dwarf2reader::CompilationUnit::Abbrev> 
>::_M_insert_aux(__gnu_cxx::__normal_iterator<dwarf2reader::CompilationUnit::Abbrev*,
 std::vector<dwarf2reader::CompilationUnit::Abbrev, 
std::allocator<dwarf2reader::CompilationUnit::Abbrev> > >, 
dwarf2reader::CompilationUnit::Abbrev const&) (in 
/home/chr1s/Desktop/buildd-dyn-gcc4.7/dump_syms)
  ==965==    by 0x121BFB: std::vector<dwarf2reader::CompilationUnit::Abbrev, 
std::allocator<dwarf2reader::CompilationUnit::Abbrev> 
>::push_back(dwarf2reader::CompilationUnit::Abbrev const&) (in 
/home/chr1s/Desktop/buildd-dyn-gcc4.7/dump_syms)
  ==965==    by 0x119E9A: dwarf2reader::CompilationUnit::ReadAbbrevs() (in 
/home/chr1s/Desktop/buildd-dyn-gcc4.7/dump_syms)
  ==965==    by 0x11A7D9: dwarf2reader::CompilationUnit::Start() (in 
/home/chr1s/Desktop/buildd-dyn-gcc4.7/dump_syms)
  ==965==    by 0x10FB10: (anonymous namespace)::LoadDwarf(std::string const&, 
Elf64_Ehdr const*, bool, google_breakpad::Module*) (dump_symbols.cc:282)
  ==965==    by 0x10FE86: (anonymous namespace)::LoadSymbols(std::string 
const&, bool, Elf64_Ehdr*, bool, (anonymous namespace)::LoadSymbolsInfo*, 
google_breakpad::Module*) (dump_symbols.cc:559)
  ==965==    by 0x110409: google_breakpad::WriteSymbolFile(std::string const&, 
std::string const&, _IO_FILE*) (dump_symbols.cc:712)
  ==965==    by 0x10E0CE: main (dump_syms.cc:49)
  ==965== 
  --965-- REDIR: 0x56b0d30 (__memmove_ssse3_back) redirected to 0x4c2cd20 
(memcpy@GLIBC_2.2.5)
  --965-- REDIR: 0x55f06e0 (__GI_memset) redirected to 0x4c2e080 (memset)
  ==965== Invalid free() / delete / delete[] / realloc()
  ==965==    at 0x4C2A4BC: operator delete(void*) (in 
/usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
  ==965==    by 0x10F276: 
std::_List_base<std::pair<dwarf2reader::DwarfAttribute, 
dwarf2reader::DwarfForm>, 
std::allocator<std::pair<dwarf2reader::DwarfAttribute, dwarf2reader::DwarfForm> 
> >::_M_clear() (new_allocator.h:100)
  ==965==    by 0x10F2B8: dwarf2reader::CompilationUnit::~CompilationUnit() 
(stl_list.h:401)
  ==965==    by 0x10FB20: (anonymous namespace)::LoadDwarf(std::string const&, 
Elf64_Ehdr const*, bool, google_breakpad::Module*) (dump_symbols.cc:283)
  ==965==    by 0x10FE86: (anonymous namespace)::LoadSymbols(std::string 
const&, bool, Elf64_Ehdr*, bool, (anonymous namespace)::LoadSymbolsInfo*, 
google_breakpad::Module*) (dump_symbols.cc:559)
  ==965==    by 0x110409: google_breakpad::WriteSymbolFile(std::string const&, 
std::string const&, _IO_FILE*) (dump_symbols.cc:712)
  ==965==    by 0x10E0CE: main (dump_syms.cc:49)
  ==965==  Address 0x5c49a90 is 48 bytes inside a block of size 8,192 alloc'd
  ==965==    at 0x4C2B1C7: operator new(unsigned long) (in 
/usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
  ==965==    by 0x126589: 
__gnu_cxx::new_allocator<dwarf2reader::CompilationUnit::Abbrev>::allocate(unsigned
 long, void const*) (in /home/chr1s/Desktop/buildd-dyn-gcc4.7/dump_syms)
  ==965==    by 0x124674: 
std::_Vector_base<dwarf2reader::CompilationUnit::Abbrev, 
std::allocator<dwarf2reader::CompilationUnit::Abbrev> >::_M_allocate(unsigned 
long) (in /home/chr1s/Desktop/buildd-dyn-gcc4.7/dump_syms)
  ==965==    by 0x122A42: std::vector<dwarf2reader::CompilationUnit::Abbrev, 
std::allocator<dwarf2reader::CompilationUnit::Abbrev> 
>::_M_insert_aux(__gnu_cxx::__normal_iterator<dwarf2reader::CompilationUnit::Abbrev*,
 std::vector<dwarf2reader::CompilationUnit::Abbrev, 
std::allocator<dwarf2reader::CompilationUnit::Abbrev> > >, 
dwarf2reader::CompilationUnit::Abbrev const&) (in 
/home/chr1s/Desktop/buildd-dyn-gcc4.7/dump_syms)
  ==965==    by 0x121BFB: std::vector<dwarf2reader::CompilationUnit::Abbrev, 
std::allocator<dwarf2reader::CompilationUnit::Abbrev> 
>::push_back(dwarf2reader::CompilationUnit::Abbrev const&) (in 
/home/chr1s/Desktop/buildd-dyn-gcc4.7/dump_syms)
  ==965==    by 0x119E9A: dwarf2reader::CompilationUnit::ReadAbbrevs() (in 
/home/chr1s/Desktop/buildd-dyn-gcc4.7/dump_syms)
  ==965==    by 0x11A7D9: dwarf2reader::CompilationUnit::Start() (in 
/home/chr1s/Desktop/buildd-dyn-gcc4.7/dump_syms)
  ==965==    by 0x10FB10: (anonymous namespace)::LoadDwarf(std::string const&, 
Elf64_Ehdr const*, bool, google_breakpad::Module*) (dump_symbols.cc:282)
  ==965==    by 0x10FE86: (anonymous namespace)::LoadSymbols(std::string 
const&, bool, Elf64_Ehdr*, bool, (anonymous namespace)::LoadSymbolsInfo*, 
google_breakpad::Module*) (dump_symbols.cc:559)
  ==965==    by 0x110409: google_breakpad::WriteSymbolFile(std::string const&, 
std::string const&, _IO_FILE*) (dump_symbols.cc:712)
  ==965==    by 0x10E0CE: main (dump_syms.cc:49)
  ==965== 
  ==965== Invalid read of size 8
  ==965==    at 0x10F26F: 
std::_List_base<std::pair<dwarf2reader::DwarfAttribute, 
dwarf2reader::DwarfForm>, 
std::allocator<std::pair<dwarf2reader::DwarfAttribute, dwarf2reader::DwarfForm> 
> >::_M_clear() (list.tcc:74)
  ==965==    by 0x10F2B8: dwarf2reader::CompilationUnit::~CompilationUnit() 
(stl_list.h:401)
  ==965==    by 0x10FB20: (anonymous namespace)::LoadDwarf(std::string const&, 
Elf64_Ehdr const*, bool, google_breakpad::Module*) (dump_symbols.cc:283)
  ==965==    by 0x10FE86: (anonymous namespace)::LoadSymbols(std::string 
const&, bool, Elf64_Ehdr*, bool, (anonymous namespace)::LoadSymbolsInfo*, 
google_breakpad::Module*) (dump_symbols.cc:559)
  ==965==    by 0x110409: google_breakpad::WriteSymbolFile(std::string const&, 
std::string const&, _IO_FILE*) (dump_symbols.cc:712)
  ==965==    by 0x10E0CE: main (dump_syms.cc:49)
  ==965==  Address 0x5c4bf80 is 0 bytes inside a block of size 24 free'd
  ==965==    at 0x4C2A4BC: operator delete(void*) (in 
/usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
  ==965==    by 0x10F276: 
std::_List_base<std::pair<dwarf2reader::DwarfAttribute, 
dwarf2reader::DwarfForm>, 
std::allocator<std::pair<dwarf2reader::DwarfAttribute, dwarf2reader::DwarfForm> 
> >::_M_clear() (new_allocator.h:100)
  ==965==    by 0x10F2B8: dwarf2reader::CompilationUnit::~CompilationUnit() 
(stl_list.h:401)
  ==965==    by 0x10FB20: (anonymous namespace)::LoadDwarf(std::string const&, 
Elf64_Ehdr const*, bool, google_breakpad::Module*) (dump_symbols.cc:283)
  ==965==    by 0x10FE86: (anonymous namespace)::LoadSymbols(std::string 
const&, bool, Elf64_Ehdr*, bool, (anonymous namespace)::LoadSymbolsInfo*, 
google_breakpad::Module*) (dump_symbols.cc:559)
  ==965==    by 0x110409: google_breakpad::WriteSymbolFile(std::string const&, 
std::string const&, _IO_FILE*) (dump_symbols.cc:712)
  ==965==    by 0x10E0CE: main (dump_syms.cc:49)
  ==965== 

  I wonder if this is actually a STL issue

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/firefox/+bug/1002590/+subscriptions

-- 
Mailing list: https://launchpad.net/~desktop-packages
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~desktop-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to