==105218== Memcheck, a memory error detector
==105218== Copyright (C) 2002-2022, and GNU GPL'd, by Julian Seward et al.
==105218== Using Valgrind-3.19.0 and LibVEX; rerun with -h for copyright info
==105218== Command: /home/ssg/dvlp/cpp/code/upp/out/CLANG.Debug.Debug_Full.Gui.Shared/ide
==105218== Parent PID: 3451
==105218== 
==105218== Invalid read of size 16
==105218==    at 0x401E66F: strncmp (strcmp.S:857)
==105218==    by 0x40061AD: is_dst (dl-load.c:210)
==105218==    by 0x40072D6: _dl_dst_count (dl-load.c:247)
==105218==    by 0x40074C7: expand_dynamic_string_token (dl-load.c:389)
==105218==    by 0x4007637: fillin_rpath.isra.0 (dl-load.c:461)
==105218==    by 0x4007932: decompose_rpath (dl-load.c:632)
==105218==    by 0x40096BD: cache_rpath (dl-load.c:674)
==105218==    by 0x40096BD: cache_rpath (dl-load.c:655)
==105218==    by 0x40096BD: _dl_map_object (dl-load.c:2110)
==105218==    by 0x400DE90: openaux (dl-deps.c:64)
==105218==    by 0x67FF35F: _dl_catch_exception (dl-error-skeleton.c:208)
==105218==    by 0x400E218: _dl_map_object_deps (dl-deps.c:248)
==105218==    by 0x401400D: dl_open_worker (dl-open.c:584)
==105218==    by 0x67FF35F: _dl_catch_exception (dl-error-skeleton.c:208)
==105218==  Address 0x72b7b00 is 1 bytes after a block of size 15 alloc'd
==105218==    at 0x48397B5: malloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==105218==    by 0x401C9EB: malloc (rtld-malloc.h:56)
==105218==    by 0x401C9EB: strdup (strdup.c:42)
==105218==    by 0x40078C4: decompose_rpath (dl-load.c:607)
==105218==    by 0x40096BD: cache_rpath (dl-load.c:674)
==105218==    by 0x40096BD: cache_rpath (dl-load.c:655)
==105218==    by 0x40096BD: _dl_map_object (dl-load.c:2110)
==105218==    by 0x400DE90: openaux (dl-deps.c:64)
==105218==    by 0x67FF35F: _dl_catch_exception (dl-error-skeleton.c:208)
==105218==    by 0x400E218: _dl_map_object_deps (dl-deps.c:248)
==105218==    by 0x401400D: dl_open_worker (dl-open.c:584)
==105218==    by 0x67FF35F: _dl_catch_exception (dl-error-skeleton.c:208)
==105218==    by 0x4013B29: _dl_open (dl-open.c:864)
==105218==    by 0x62EF257: dlopen_doit (dlopen.c:66)
==105218==    by 0x67FF35F: _dl_catch_exception (dl-error-skeleton.c:208)
==105218== 
==105218== Invalid read of size 16
==105218==    at 0x401E66F: strncmp (strcmp.S:857)
==105218==    by 0x40061AD: is_dst (dl-load.c:210)
==105218==    by 0x400738E: _dl_dst_substitute (dl-load.c:289)
==105218==    by 0x4007637: fillin_rpath.isra.0 (dl-load.c:461)
==105218==    by 0x4007932: decompose_rpath (dl-load.c:632)
==105218==    by 0x40096BD: cache_rpath (dl-load.c:674)
==105218==    by 0x40096BD: cache_rpath (dl-load.c:655)
==105218==    by 0x40096BD: _dl_map_object (dl-load.c:2110)
==105218==    by 0x400DE90: openaux (dl-deps.c:64)
==105218==    by 0x67FF35F: _dl_catch_exception (dl-error-skeleton.c:208)
==105218==    by 0x400E218: _dl_map_object_deps (dl-deps.c:248)
==105218==    by 0x401400D: dl_open_worker (dl-open.c:584)
==105218==    by 0x67FF35F: _dl_catch_exception (dl-error-skeleton.c:208)
==105218==    by 0x4013B29: _dl_open (dl-open.c:864)
==105218==  Address 0x72b7b00 is 1 bytes after a block of size 15 alloc'd
==105218==    at 0x48397B5: malloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==105218==    by 0x401C9EB: malloc (rtld-malloc.h:56)
==105218==    by 0x401C9EB: strdup (strdup.c:42)
==105218==    by 0x40078C4: decompose_rpath (dl-load.c:607)
==105218==    by 0x40096BD: cache_rpath (dl-load.c:674)
==105218==    by 0x40096BD: cache_rpath (dl-load.c:655)
==105218==    by 0x40096BD: _dl_map_object (dl-load.c:2110)
==105218==    by 0x400DE90: openaux (dl-deps.c:64)
==105218==    by 0x67FF35F: _dl_catch_exception (dl-error-skeleton.c:208)
==105218==    by 0x400E218: _dl_map_object_deps (dl-deps.c:248)
==105218==    by 0x401400D: dl_open_worker (dl-open.c:584)
==105218==    by 0x67FF35F: _dl_catch_exception (dl-error-skeleton.c:208)
==105218==    by 0x4013B29: _dl_open (dl-open.c:864)
==105218==    by 0x62EF257: dlopen_doit (dlopen.c:66)
==105218==    by 0x67FF35F: _dl_catch_exception (dl-error-skeleton.c:208)
==105218== 
==105218== Syscall param write(buf) points to uninitialised byte(s)
==105218==    at 0x62DD7AF: __libc_write (write.c:26)
==105218==    by 0x62DD7AF: write (write.c:24)
==105218==    by 0x92A187: Upp::FileStream::Write(long long, void const*, unsigned int) (dvlp/cpp/code/upp/git/uppsrc/Core/BlockStream.cpp:448)
==105218==    by 0x9291EA: Upp::BlockStream::Flush() (dvlp/cpp/code/upp/git/uppsrc/Core/BlockStream.cpp:58)
==105218==    by 0x9293A6: Upp::BlockStream::SyncPage() (dvlp/cpp/code/upp/git/uppsrc/Core/BlockStream.cpp:94)
==105218==    by 0x929866: Upp::BlockStream::_Put(void const*, unsigned int) (dvlp/cpp/code/upp/git/uppsrc/Core/BlockStream.cpp:169)
==105218==    by 0x57028A: Upp::Stream::Put(void const*, int) (dvlp/cpp/code/upp/git/uppsrc/Core/Stream.h:99)
==105218==    by 0x927CB2: Upp::SaveStream(Upp::Stream&, Upp::String const&) (dvlp/cpp/code/upp/git/uppsrc/Core/Stream.cpp:1268)
==105218==    by 0x927D16: Upp::SaveFile(char const*, Upp::String const&) (dvlp/cpp/code/upp/git/uppsrc/Core/Stream.cpp:1275)
==105218==    by 0x60F52D: SaveChangedFile(char const*, Upp::String, bool) (dvlp/cpp/code/upp/git/uppsrc/ide/Core/Core.cpp:97)
==105218==    by 0x455CFB: Ide::SaveConfig() (dvlp/cpp/code/upp/git/uppsrc/ide/Config.cpp:353)
==105218==    by 0x456181: Ide::SaveConfigOnTime() (dvlp/cpp/code/upp/git/uppsrc/ide/Config.cpp:366)
==105218==    by 0x4D0010: GuiMainFn_() (dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:360)
==105218==  Address 0x7ada931 is in a rw- anonymous segment
==105218==  Uninitialised value was created by a stack allocation
==105218==    at 0x454D94: Ide::Serialize(Upp::Stream&) (dvlp/cpp/code/upp/git/uppsrc/ide/Config.cpp:187)
==105218== 
==105218== 
==105218== HEAP SUMMARY:
==105218==     in use at exit: 3,562,663 bytes in 28,179 blocks
==105218==   total heap usage: 1,160,318 allocs, 1,132,139 frees, 1,165,463,190 bytes allocated
==105218== 
==105218== LEAK SUMMARY:
==105218==    definitely lost: 80 bytes in 6 blocks
==105218==    indirectly lost: 0 bytes in 0 blocks
==105218==      possibly lost: 4,953 bytes in 39 blocks
==105218==    still reachable: 3,463,006 bytes in 27,288 blocks
==105218==         suppressed: 0 bytes in 0 blocks
==105218== Rerun with --leak-check=full to see details of leaked memory
==105218== 
==105218== For lists of detected and suppressed errors, rerun with: -s
==105218== ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 2 from 2)
