]> granicus.if.org Git - graphviz/commitdiff
fix problem with graph iodisc
authorellson <devnull@localhost>
Mon, 2 Mar 2009 14:11:44 +0000 (14:11 +0000)
committerellson <devnull@localhost>
Mon, 2 Mar 2009 14:11:44 +0000 (14:11 +0000)
ChangeLog
cmd/tools/gvpack.c
lib/graph/attribs.c
lib/graph/graphio.c
lib/graph/lexer.c

index c21607b3138ce22efa499166dc1d041f6ef22fb9..c09bb68c18535ffc1ee72c9a55279f7a88891b22 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,14 +1,13 @@
-February 26, 2009
-       - Preparation for Release 2.22
+March 1, 2009
+       - Release 2.22
        - Core:
                - libgvc api changed, version bumped.  Affects third party
                  applications using libgvc.
                - plugin api changed, version bumped.  Affects third party
                  plugins for graphviz.
-               - 90% conversion to libgraph done, not in use yet, (and yes,
-                 its true what they say about the last 10% )
-               - Internal layout code completely converted to floating
-                 point.
+               - 90% conversion to cgraph has been done, but not enabled yet,
+                 (and yes, its true what they say about the last 10% )
+               - layout code completely converted to floating point.
                - new "dot -P" option for generating a graph of available
                  plugins.
        - Plugins:
@@ -32,7 +31,7 @@ February 26, 2009
                - Improved GUI 
        - Windows:
                - VisualC project files now available, in addition to the GNU
-               Makefiles that are used the mingw builds.
+                 Makefiles that are used the mingw builds.
        - Language Bindings:
                - fixed problem with writing dot, xdot, plain, canon to 
                  memory or to Tcl_Channels
@@ -51,7 +50,6 @@ February 26, 2009
                1568, 1569, 1570, 1571, 1573, 1577, 1578, 1579, 1580, 1581,
                1582, 1584, 1586,
                
-
 August 2, 2008
        - drop libagraph from distribution - part of migration to libcgraph
        - rename file format from .dot to .gv to avoid conflict with Word templates
index 37cf60681358ba6494c0f84cce30e66ec67a67c7..ef8262e6f1e0b463e8baa95508aea879758e1fde 100644 (file)
@@ -31,7 +31,6 @@
 
 #include <assert.h>
 #include "gvc.h"
-#include "gvio.h"
 #include "render.h"
 #include "neatoprocs.h"
 #include "ingraphs.h"
@@ -163,7 +162,6 @@ static void init(int argc, char *argv[])
     int c;
 
     aginit();
-    agsetiodisc(NULL, gvfwrite, gvferror);
     while ((c = getopt(argc, argv, ":ngvum:o:G:?")) != -1) {
        switch (c) {
        case 'n':
index b959c6c0d3f7eb6a70dda0dd22df0286e7ac4e0d..83973cf33d98c5fe6a629413ce2d1081a880a9f1 100644 (file)
@@ -340,7 +340,6 @@ void aginitlib(int gs, int ns, int es)
        AG.node_nbytes = ns;
        AG.edge_nbytes = es;
        AG.init_called = TRUE;
-       AG.fgets = fgets;   /* init to system version of fwrite() */
        AG.fwrite = fwrite;   /* init to system version of fwrite() */
 #if defined(__SUNPRO_C) || defined(__CYGWIN__) || defined(__MINGW32__)
 #undef ferror
index a81d843925f473565d8a1de3d6e66555429c504b..f9e255cf618fb1d1d7db1e849c2d8761c0fe2c59 100644 (file)
@@ -586,6 +586,18 @@ int agwrite(Agraph_t * g, FILE * fp)
     printdict_t *p;
     char *t0, *t1;
 
+    if (AG.fwrite == NULL) {
+        AG.fwrite = fwrite;   /* init to system version of fwrite() */
+    }
+    if (AG.ferror == NULL) {
+#if defined(__SUNPRO_C) || defined(__CYGWIN__) || defined(__MINGW32__)
+#undef ferror
+       AG.ferror = agferror; /* init to ferror macro wrapper function */
+#else
+       AG.ferror = ferror;   /* init to system version of ferror() */
+#endif
+    }
+
     /* write the graph header */
     t0 = (AG_IS_STRICT(g)) ? "strict " : "";
     t1 = (AG_IS_DIRECTED(g)) ? "digraph" : "graph";
index b1633ab524eb193f6f444cd840b7ae5d11e92e1a..c41c8c82a0a525e03f68a9916a6f4e10c1ad9ad7 100644 (file)
@@ -77,6 +77,8 @@ void aglexinit(FILE * fp, gets_f mygets)
     Lexer_fp = fp;
     if (mygets)
         AG.fgets = mygets;
+    if (AG.fgets == NULL)
+       AG.fgets = fgets;
     LexPtr = NULL;
     if (AG.linebuf == NULL) {
        LineBufSize = BUFSIZ;