Dot Segmentation Fault with splines="ortho" Invalid read of size 4 at 0x48FEDDF: mkMaze
With ortho lines I get a segmentation fault either commenting out the line splines="ortho" or three lines further down works ok.
$ dot -Tpng -o batmonOpAmp.png batmonOpAmp.gv
Segmentation fault
$ gdb dot
... edited
Reading symbols from dot...
(No debugging symbols found in dot)
(gdb) run -Tpng -o batmonOpAmp.png batmonOpAmp.gv
Starting program: /usr/bin/dot -Tpng -o batmonOpAmp.png batmonOpAmp.gv
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7f4cddf in mkMaze () from /lib/x86_64-linux-gnu/libgvc.so.6
(gdb) bt
#0 0x00007ffff7f4cddf in mkMaze () at /lib/x86_64-linux-gnu/libgvc.so.6
#1 0x00007ffff7f4ee71 in orthoEdges () at /lib/x86_64-linux-gnu/libgvc.so.6
#2 0x00007ffff7b03083 in () at /usr/lib/x86_64-linux-gnu/graphviz/libgvplugin_dot_layout.so.6
#3 0x00007ffff7af332d in () at /usr/lib/x86_64-linux-gnu/graphviz/libgvplugin_dot_layout.so.6
#4 0x00007ffff7af3aa8 in dot_layout () at /usr/lib/x86_64-linux-gnu/graphviz/libgvplugin_dot_layout.so.6
#5 0x00007ffff7f02f0b in gvLayoutJobs () at /lib/x86_64-linux-gnu/libgvc.so.6
#6 0x000055555555557f in ()
#7 0x00007ffff7d001e3 in __libc_start_main (main=
0x5555555552e0, argc=5, argv=0x7fffffffce68, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffce58) at ../csu/libc-start.c:308
#8 0x000055555555562e in ()
(gdb) quit
$ valgrind dot -Tpng -o batmonOpAmp.png batmonOpAmp.gv
==13067== Memcheck, a memory error detector
==13067== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==13067== Using Valgrind-3.15.0 and LibVEX; rerun with -h for copyright info
==13067== Command: dot -Tpng -o batmonOpAmp.png batmonOpAmp.gv
==13067==
==13067== Invalid read of size 4
==13067== at 0x48FEDDF: mkMaze (in /usr/lib/x86_64-linux-gnu/libgvc.so.6.0.0)
==13067== by 0x4900E70: orthoEdges (in /usr/lib/x86_64-linux-gnu/libgvc.so.6.0.0)
==13067== by 0x5119082: ??? (in /usr/lib/x86_64-linux-gnu/graphviz/libgvplugin_dot_layout.so.6.0.0)
==13067== by 0x510932C: ??? (in /usr/lib/x86_64-linux-gnu/graphviz/libgvplugin_dot_layout.so.6.0.0)
==13067== by 0x5109AA7: dot_layout (in /usr/lib/x86_64-linux-gnu/graphviz/libgvplugin_dot_layout.so.6.0.0)
==13067== by 0x48B4F0A: gvLayoutJobs (in /usr/lib/x86_64-linux-gnu/libgvc.so.6.0.0)
==13067== by 0x10957E: ??? (in /usr/sbin/libgvc6-config-update)
==13067== by 0x49701E2: (below main) (libc-start.c:308)
==13067== Address 0x0 is not stack'd, malloc'd or (recently) free'd
==13067==
==13067==
==13067== Process terminating with default action of signal 11 (SIGSEGV)
==13067== Access not within mapped region at address 0x0
==13067== at 0x48FEDDF: mkMaze (in /usr/lib/x86_64-linux-gnu/libgvc.so.6.0.0)
==13067== by 0x4900E70: orthoEdges (in /usr/lib/x86_64-linux-gnu/libgvc.so.6.0.0)
==13067== by 0x5119082: ??? (in /usr/lib/x86_64-linux-gnu/graphviz/libgvplugin_dot_layout.so.6.0.0)
==13067== by 0x510932C: ??? (in /usr/lib/x86_64-linux-gnu/graphviz/libgvplugin_dot_layout.so.6.0.0)
==13067== by 0x5109AA7: dot_layout (in /usr/lib/x86_64-linux-gnu/graphviz/libgvplugin_dot_layout.so.6.0.0)
==13067== by 0x48B4F0A: gvLayoutJobs (in /usr/lib/x86_64-linux-gnu/libgvc.so.6.0.0)
==13067== by 0x10957E: ??? (in /usr/sbin/libgvc6-config-update)
==13067== by 0x49701E2: (below main) (libc-start.c:308)
==13067== If you believe this happened as a result of a stack
==13067== overflow in your program's main thread (unlikely but
==13067== possible), you can try to increase the size of the
==13067== main thread stack using the --main-stacksize= flag.
==13067== The main thread stack size used in this run was 8388608.
==13067==
==13067== HEAP SUMMARY:
==13067== in use at exit: 1,396,131 bytes in 17,870 blocks
==13067== total heap usage: 31,791 allocs, 13,921 frees, 6,807,946 bytes allocated
==13067==
==13067== LEAK SUMMARY:
==13067== definitely lost: 179,656 bytes in 700 blocks
==13067== indirectly lost: 162,189 bytes in 6,395 blocks
==13067== possibly lost: 4,620 bytes in 22 blocks
==13067== still reachable: 1,048,906 bytes in 10,748 blocks
==13067== of which reachable via heuristic:
==13067== length64 : 80 bytes in 2 blocks
==13067== newarray : 1,568 bytes in 18 blocks
==13067== suppressed: 0 bytes in 0 blocks
==13067== Rerun with --leak-check=full to see details of leaked memory
==13067==
==13067== For lists of detected and suppressed errors, rerun with: -s
==13067== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
Segmentation fault
$ dot -v
dot - graphviz version 2.40.1 (20161225.0304)
libdir = "/usr/lib/x86_64-linux-gnu/graphviz"
Activated plugin library: libgvplugin_dot_layout.so.6
Using layout: dot:dot_layout
Activated plugin library: libgvplugin_core.so.6
$ uname -a
Linux rtx 5.3.0-26-generic #28-Ubuntu SMP Wed Dec 18 05:37:46 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux