]> granicus.if.org Git - graphviz/commit
use a local instead of reusing global AF in gvrender_beziercurve
authorMatthew Fernandez <matthew.fernandez@gmail.com>
Sun, 4 Oct 2020 20:47:27 +0000 (13:47 -0700)
committerMatthew Fernandez <matthew.fernandez@gmail.com>
Sat, 10 Oct 2020 21:45:05 +0000 (14:45 -0700)
commitf7dfa77d6e8d68d3bdcc1c635546b49ec01ddac4
tree22b057fb8a31fa6abe1b1bf2a14c2efc4fd8790b
parentef1aba3b5b2a73040a92ef208b7dbe35b8aa8ac7
use a local instead of reusing global AF in gvrender_beziercurve

There is a static global, AF, that is reused for a number of gvrender functions,
but none need to retain previous data stored in this array. This hack presumably
was from a time when allocators were much slower. Refactoring this into a local
allocation makes this function thread safe and removes the need to unnecessarily
prolong the lifetime of this allocation, thus decreasing Graphviz memory usage.
This commit introduces a -Wshadow warning about AF, but that will be removed
when we soon remove the static global.
lib/gvc/gvrender.c