I tracked this down and I believe the issue is related to the
interpretation of the global variables Agdirected and Agundirected from
libgvc. If you replace lines 75 and 76 of graphviz_draw.py from:

        libgv_directed = libgv.Agdirected        libgv_undirected =
libgv.Agundirected

to:

        libgv_directed = ctypes.c_int.in_dll(libgv, "Agdirected")
        libgv_undirected = ctypes.c_int.in_dll(libgv, "Agundirected")

these values are interpreted correctly (as bit fields, not function
pointers) and the test case works again.

Best,
Jeff


On Mon, Aug 17, 2020 at 8:54 AM Tiago de Paula Peixoto <ti...@skewed.de>
wrote:

> I can also reproduce this, but this code has not been changed in several
> years.
>
> I consider graphviz_draw() to be largely deprecated (in favor of
> graph_draw()), since the graphviz interface is fairly buggy and
> inconvenient.
>
> I'm planning to remove this function altogether in new releases, and I'm
> not very inclined to debug it.
>
> Best,
> Tiago
>
> Am 17.08.20 um 17:44 schrieb Jeff Trull:
> > I can reproduce this.
> >
> > On Mon, Aug 17, 2020 at 1:29 AM Rolf Sander <rolf.san...@mpic.de
> > <mailto:rolf.san...@mpic.de>> wrote:
> >
> >     Hello,
> >
> >     I get a segmentation fault when trying to plot a loop with
> >     graphviz_draw(). Here is a minimal example to reproduce the error:
> >
> >     import graph_tool.all as gt
> >     g = gt.Graph()
> >     v0 = g.add_vertex()
> >     v1 = g.add_vertex()
> >     e01 = g.add_edge(v0,v1)
> >     e11 = g.add_edge(v1,v1) # loop
> >     gt.graphviz_draw(g)
> >
> >     I have version 2.33 of python3-graph-tool installed on my computer
> which
> >     runs on Linux Mint 19.2 Tina (based on Ubuntu 18.04 LTS, bionic). My
> >     graphviz version is 2.40.1-2.
> >
> >     It works fine if I don't add the loop e11 to the graph.
> >
> >     It works fine if I use gt.graph_draw() instead of gt.graphviz_draw()
> >
> >     It works fine if I use graphviz directly (via a .dot file).
> >
> >     It did work fine in earlier versions of graph_tool.
> >
> >     Can anyone reproduce this?
> >
> >     Best regards
> >     Rolf
> >
> >     --
> >
>  -----------------------------------------------------------------------
> >        Rolf Sander                              phone: [+49]
> 6131/305-4610
> >        Max-Planck Institute of Chemistry        email:
> >     rolf.san...@mpic.de <mailto:rolf.san...@mpic.de>
> >        PO Box 3060, 55020 Mainz, Germany     homepage:
> >     www.rolf-sander.net <http://www.rolf-sander.net>
> >
>  -----------------------------------------------------------------------
> >                    https://www.encyclopedia-of-geosciences.net
> >                  https://www.geoscientific-model-development.net
> >
>  -----------------------------------------------------------------------
> >     _______________________________________________
> >     graph-tool mailing list
> >     graph-tool@skewed.de <mailto:graph-tool@skewed.de>
> >     https://lists.skewed.de/mailman/listinfo/graph-tool
> >
> >
> > _______________________________________________
> > graph-tool mailing list
> > graph-tool@skewed.de
> > https://lists.skewed.de/mailman/listinfo/graph-tool
> >
>
>
> --
> Tiago de Paula Peixoto <ti...@skewed.de>
>
> _______________________________________________
> graph-tool mailing list
> graph-tool@skewed.de
> https://lists.skewed.de/mailman/listinfo/graph-tool
>
_______________________________________________
graph-tool mailing list
graph-tool@skewed.de
https://lists.skewed.de/mailman/listinfo/graph-tool

Reply via email to