==6208== Memcheck, a memory error detector ==6208== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al. ==6208== Using Valgrind-3.10.1 and LibVEX; rerun with -h for copyright info ==6208== Command: dmpovray -Iaa.pov ==6208== Parent PID: 3022 ==6208== ==6208== Thread 6: ==6208== Invalid read of size 8 ==6208== at 0x592256: pov::Insert_Spline_Entry(pov::GenericSpline*, double, double const (&) [5]) (splines.cpp:664) ==6208== by 0x5FA196: pov::Parser::Parse_Spline() (parser_expressions.cpp:3621) ==6208== by 0x54F6FC: Parse_RValue (parser.cpp:8793) ==6208== by 0x54F6FC: pov::Parser::Parse_Declare(bool, bool) (parser.cpp:8473) ==6208== by 0x537685: pov::Parser::Parse_Directive(int) (parser_tokenizer.cpp:2103) ==6208== by 0x53391C: pov::Parser::Get_Token() (parser_tokenizer.cpp:446) ==6208== by 0x551237: pov::Parser::Parse_Frame() (parser.cpp:6596) ==6208== by 0x551B1B: pov::Parser::Run() (parser.cpp:205) ==6208== by 0x57618E: pov::Task::TaskThread(boost::function0 const&) (task.cpp:176) ==6208== by 0x6300099: ??? (in /usr/lib/x86_64-linux-gnu/libboost_thread.so.1.55.0) ==6208== by 0x6F456A9: start_thread (pthread_create.c:333) ==6208== by 0x7262EEC: clone (clone.S:109) ==6208== Address 0xbf96b08 is 0 bytes after a block of size 88 alloc'd ==6208== at 0x4C2C100: operator new(unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==6208== by 0x592999: allocate (new_allocator.h:104) ==6208== by 0x592999: allocate (alloc_traits.h:182) ==6208== by 0x592999: _M_allocate (stl_vector.h:170) ==6208== by 0x592999: std::vector >::_M_fill_insert(__gnu_cxx::__normal_iterator > >, unsigned long, pov::SplineEntry const&) (vector.tcc:491) ==6208== by 0x5921EB: insert (stl_vector.h:1073) ==6208== by 0x5921EB: resize (stl_vector.h:716) ==6208== by 0x5921EB: pov::mkfree(pov::GenericSpline*, unsigned long) (splines.cpp:440) ==6208== by 0x5922CA: pov::Insert_Spline_Entry(pov::GenericSpline*, double, double const (&) [5]) (splines.cpp:671) ==6208== by 0x5FA196: pov::Parser::Parse_Spline() (parser_expressions.cpp:3621) ==6208== by 0x54F6FC: Parse_RValue (parser.cpp:8793) ==6208== by 0x54F6FC: pov::Parser::Parse_Declare(bool, bool) (parser.cpp:8473) ==6208== by 0x537685: pov::Parser::Parse_Directive(int) (parser_tokenizer.cpp:2103) ==6208== by 0x53391C: pov::Parser::Get_Token() (parser_tokenizer.cpp:446) ==6208== by 0x551237: pov::Parser::Parse_Frame() (parser.cpp:6596) ==6208== by 0x551B1B: pov::Parser::Run() (parser.cpp:205) ==6208== by 0x57618E: pov::Task::TaskThread(boost::function0 const&) (task.cpp:176) ==6208== by 0x6300099: ??? (in /usr/lib/x86_64-linux-gnu/libboost_thread.so.1.55.0) ==6208== ==6208== Conditional jump or move depends on uninitialised value(s) ==6208== at 0x59225A: pov::Insert_Spline_Entry(pov::GenericSpline*, double, double const (&) [5]) (splines.cpp:664) ==6208== by 0x5FA196: pov::Parser::Parse_Spline() (parser_expressions.cpp:3621) ==6208== by 0x54F6FC: Parse_RValue (parser.cpp:8793) ==6208== by 0x54F6FC: pov::Parser::Parse_Declare(bool, bool) (parser.cpp:8473) ==6208== by 0x537685: pov::Parser::Parse_Directive(int) (parser_tokenizer.cpp:2103) ==6208== by 0x53391C: pov::Parser::Get_Token() (parser_tokenizer.cpp:446) ==6208== by 0x551237: pov::Parser::Parse_Frame() (parser.cpp:6596) ==6208== by 0x551B1B: pov::Parser::Run() (parser.cpp:205) ==6208== by 0x57618E: pov::Task::TaskThread(boost::function0 const&) (task.cpp:176) ==6208== by 0x6300099: ??? (in /usr/lib/x86_64-linux-gnu/libboost_thread.so.1.55.0) ==6208== by 0x6F456A9: start_thread (pthread_create.c:333) ==6208== by 0x7262EEC: clone (clone.S:109) ==6208== Uninitialised value was created by a heap allocation ==6208== at 0x4C2C100: operator new(unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==6208== by 0x592999: allocate (new_allocator.h:104) ==6208== by 0x592999: allocate (alloc_traits.h:182) ==6208== by 0x592999: _M_allocate (stl_vector.h:170) ==6208== by 0x592999: std::vector >::_M_fill_insert(__gnu_cxx::__normal_iterator > >, unsigned long, pov::SplineEntry const&) (vector.tcc:491) ==6208== by 0x5921EB: insert (stl_vector.h:1073) ==6208== by 0x5921EB: resize (stl_vector.h:716) ==6208== by 0x5921EB: pov::mkfree(pov::GenericSpline*, unsigned long) (splines.cpp:440) ==6208== by 0x5922CA: pov::Insert_Spline_Entry(pov::GenericSpline*, double, double const (&) [5]) (splines.cpp:671) ==6208== by 0x5FA196: pov::Parser::Parse_Spline() (parser_expressions.cpp:3621) ==6208== by 0x54F6FC: Parse_RValue (parser.cpp:8793) ==6208== by 0x54F6FC: pov::Parser::Parse_Declare(bool, bool) (parser.cpp:8473) ==6208== by 0x537685: pov::Parser::Parse_Directive(int) (parser_tokenizer.cpp:2103) ==6208== by 0x53391C: pov::Parser::Get_Token() (parser_tokenizer.cpp:446) ==6208== by 0x551237: pov::Parser::Parse_Frame() (parser.cpp:6596) ==6208== by 0x551B1B: pov::Parser::Run() (parser.cpp:205) ==6208== by 0x57618E: pov::Task::TaskThread(boost::function0 const&) (task.cpp:176) ==6208== by 0x6300099: ??? (in /usr/lib/x86_64-linux-gnu/libboost_thread.so.1.55.0) ==6208== ==6208== Invalid read of size 8 ==6208== at 0x592256: pov::Insert_Spline_Entry(pov::GenericSpline*, double, double const (&) [5]) (splines.cpp:664) ==6208== by 0x5FA196: pov::Parser::Parse_Spline() (parser_expressions.cpp:3621) ==6208== by 0x54E58E: pov::Parser::Parse_RValue(int, int*, void**, pov::Sym_Table_Entry*, bool, bool, bool, bool, int) (parser.cpp:8793) ==6208== by 0x53425A: pov::Parser::Invoke_Macro() (parser_tokenizer.cpp:3055) ==6208== by 0x5336C1: pov::Parser::Get_Token() (parser_tokenizer.cpp:624) ==6208== by 0x54F5CD: Parse_RValue (parser.cpp:8517) ==6208== by 0x54F5CD: pov::Parser::Parse_Declare(bool, bool) (parser.cpp:8473) ==6208== by 0x537685: pov::Parser::Parse_Directive(int) (parser_tokenizer.cpp:2103) ==6208== by 0x53391C: pov::Parser::Get_Token() (parser_tokenizer.cpp:446) ==6208== by 0x551237: pov::Parser::Parse_Frame() (parser.cpp:6596) ==6208== by 0x551B1B: pov::Parser::Run() (parser.cpp:205) ==6208== by 0x57618E: pov::Task::TaskThread(boost::function0 const&) (task.cpp:176) ==6208== by 0x6300099: ??? (in /usr/lib/x86_64-linux-gnu/libboost_thread.so.1.55.0) ==6208== Address 0xf399dc8 is 0 bytes after a block of size 88 alloc'd ==6208== at 0x4C2C100: operator new(unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==6208== by 0x592999: allocate (new_allocator.h:104) ==6208== by 0x592999: allocate (alloc_traits.h:182) ==6208== by 0x592999: _M_allocate (stl_vector.h:170) ==6208== by 0x592999: std::vector >::_M_fill_insert(__gnu_cxx::__normal_iterator > >, unsigned long, pov::SplineEntry const&) (vector.tcc:491) ==6208== by 0x5921EB: insert (stl_vector.h:1073) ==6208== by 0x5921EB: resize (stl_vector.h:716) ==6208== by 0x5921EB: pov::mkfree(pov::GenericSpline*, unsigned long) (splines.cpp:440) ==6208== by 0x5922CA: pov::Insert_Spline_Entry(pov::GenericSpline*, double, double const (&) [5]) (splines.cpp:671) ==6208== by 0x5FA196: pov::Parser::Parse_Spline() (parser_expressions.cpp:3621) ==6208== by 0x54E58E: pov::Parser::Parse_RValue(int, int*, void**, pov::Sym_Table_Entry*, bool, bool, bool, bool, int) (parser.cpp:8793) ==6208== by 0x53425A: pov::Parser::Invoke_Macro() (parser_tokenizer.cpp:3055) ==6208== by 0x5336C1: pov::Parser::Get_Token() (parser_tokenizer.cpp:624) ==6208== by 0x54F5CD: Parse_RValue (parser.cpp:8517) ==6208== by 0x54F5CD: pov::Parser::Parse_Declare(bool, bool) (parser.cpp:8473) ==6208== by 0x537685: pov::Parser::Parse_Directive(int) (parser_tokenizer.cpp:2103) ==6208== by 0x53391C: pov::Parser::Get_Token() (parser_tokenizer.cpp:446) ==6208== by 0x551237: pov::Parser::Parse_Frame() (parser.cpp:6596) ==6208== ==6208== Conditional jump or move depends on uninitialised value(s) ==6208== at 0x59225A: pov::Insert_Spline_Entry(pov::GenericSpline*, double, double const (&) [5]) (splines.cpp:664) ==6208== by 0x5FA196: pov::Parser::Parse_Spline() (parser_expressions.cpp:3621) ==6208== by 0x54E58E: pov::Parser::Parse_RValue(int, int*, void**, pov::Sym_Table_Entry*, bool, bool, bool, bool, int) (parser.cpp:8793) ==6208== by 0x53425A: pov::Parser::Invoke_Macro() (parser_tokenizer.cpp:3055) ==6208== by 0x5336C1: pov::Parser::Get_Token() (parser_tokenizer.cpp:624) ==6208== by 0x54F5CD: Parse_RValue (parser.cpp:8517) ==6208== by 0x54F5CD: pov::Parser::Parse_Declare(bool, bool) (parser.cpp:8473) ==6208== by 0x537685: pov::Parser::Parse_Directive(int) (parser_tokenizer.cpp:2103) ==6208== by 0x53391C: pov::Parser::Get_Token() (parser_tokenizer.cpp:446) ==6208== by 0x551237: pov::Parser::Parse_Frame() (parser.cpp:6596) ==6208== by 0x551B1B: pov::Parser::Run() (parser.cpp:205) ==6208== by 0x57618E: pov::Task::TaskThread(boost::function0 const&) (task.cpp:176) ==6208== by 0x6300099: ??? (in /usr/lib/x86_64-linux-gnu/libboost_thread.so.1.55.0) ==6208== Uninitialised value was created by a heap allocation ==6208== at 0x4C2C100: operator new(unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==6208== by 0x592999: allocate (new_allocator.h:104) ==6208== by 0x592999: allocate (alloc_traits.h:182) ==6208== by 0x592999: _M_allocate (stl_vector.h:170) ==6208== by 0x592999: std::vector >::_M_fill_insert(__gnu_cxx::__normal_iterator > >, unsigned long, pov::SplineEntry const&) (vector.tcc:491) ==6208== by 0x5921EB: insert (stl_vector.h:1073) ==6208== by 0x5921EB: resize (stl_vector.h:716) ==6208== by 0x5921EB: pov::mkfree(pov::GenericSpline*, unsigned long) (splines.cpp:440) ==6208== by 0x5922CA: pov::Insert_Spline_Entry(pov::GenericSpline*, double, double const (&) [5]) (splines.cpp:671) ==6208== by 0x5FA196: pov::Parser::Parse_Spline() (parser_expressions.cpp:3621) ==6208== by 0x54E58E: pov::Parser::Parse_RValue(int, int*, void**, pov::Sym_Table_Entry*, bool, bool, bool, bool, int) (parser.cpp:8793) ==6208== by 0x53425A: pov::Parser::Invoke_Macro() (parser_tokenizer.cpp:3055) ==6208== by 0x5336C1: pov::Parser::Get_Token() (parser_tokenizer.cpp:624) ==6208== by 0x54F5CD: Parse_RValue (parser.cpp:8517) ==6208== by 0x54F5CD: pov::Parser::Parse_Declare(bool, bool) (parser.cpp:8473) ==6208== by 0x537685: pov::Parser::Parse_Directive(int) (parser_tokenizer.cpp:2103) ==6208== by 0x53391C: pov::Parser::Get_Token() (parser_tokenizer.cpp:446) ==6208== by 0x551237: pov::Parser::Parse_Frame() (parser.cpp:6596) ==6208== ==6208== Thread 3: ==6208== Syscall param write(buf) points to uninitialised byte(s) ==6208== at 0x72534FD: ??? (syscall-template.S:81) ==6208== by 0x71D5BFE: _IO_file_write@@GLIBC_2.2.5 (fileops.c:1251) ==6208== by 0x71D70E8: new_do_write (fileops.c:506) ==6208== by 0x71D70E8: _IO_do_write@@GLIBC_2.2.5 (fileops.c:482) ==6208== by 0x71D547F: _IO_file_sync@@GLIBC_2.2.5 (fileops.c:862) ==6208== by 0x71CAC65: fflush (iofflush.c:41) ==6208== by 0x45C611: pov_base::IOBase::flush() (fileinputoutput.cpp:175) ==6208== by 0x4B67CA: flush (fileinputoutput.h:194) ==6208== by 0x4B67CA: pov_frontend::RenderFrontendBase::NewBackup(POVMS_Object&, pov_frontend::ViewData&, pov_base::Path const&) (renderfrontend.cpp:623) ==6208== by 0x45589D: pov_frontend::RenderFrontend::StartRender(pov_frontend::RenderFrontendBase::Id, POVMS_Object&) (renderfrontend.h:693) ==6208== by 0x44CA60: vfe::VirtualFrontEnd::Process() (vfe.cpp:1089) ==6208== by 0x425651: vfe::vfeSession::ProcessFrontend() (vfesession.cpp:500) ==6208== by 0x42B20A: vfe::vfeSession::WorkerThread() (vfesession.cpp:613) ==6208== by 0x6300099: ??? (in /usr/lib/x86_64-linux-gnu/libboost_thread.so.1.55.0) ==6208== Address 0x4027020 is not stack'd, malloc'd or (recently) free'd ==6208== Uninitialised value was created by a stack allocation ==6208== at 0x4B6594: pov_frontend::RenderFrontendBase::NewBackup(POVMS_Object&, pov_frontend::ViewData&, pov_base::Path const&) (renderfrontend.cpp:606) ==6208== ==6208== ==6208== HEAP SUMMARY: ==6208== in use at exit: 2,143,086 bytes in 1,285 blocks ==6208== total heap usage: 123,361 allocs, 122,076 frees, 114,252,754 bytes allocated ==6208== ==6208== LEAK SUMMARY: ==6208== definitely lost: 176 bytes in 5 blocks ==6208== indirectly lost: 358 bytes in 13 blocks ==6208== possibly lost: 1,920,624 bytes in 2 blocks ==6208== still reachable: 221,928 bytes in 1,265 blocks ==6208== suppressed: 0 bytes in 0 blocks ==6208== Rerun with --leak-check=full to see details of leaked memory ==6208== ==6208== For counts of detected and suppressed errors, rerun with: -v ==6208== ERROR SUMMARY: 1533 errors from 5 contexts (suppressed: 0 from 0)