From: ellson Date: Thu, 26 Feb 2009 19:52:42 +0000 (+0000) Subject: use fgets in iodiscipline instead of fread. X-Git-Tag: LAST_LIBGRAPH~32^2~2385 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=90d44847d6ab250939a546febd5270942a9f6b3a;p=graphviz use fgets in iodiscipline instead of fread. --- diff --git a/lib/graph/attribs.c b/lib/graph/attribs.c index d735f6b0e..786fda9bb 100644 --- a/lib/graph/attribs.c +++ b/lib/graph/attribs.c @@ -340,6 +340,7 @@ 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__) #undef ferror diff --git a/lib/graph/graph.h b/lib/graph/graph.h index 1a15a87be..0b5ab28fe 100644 --- a/lib/graph/graph.h +++ b/lib/graph/graph.h @@ -164,7 +164,7 @@ extern "C" { extern void agsetfile(char *); extern Agraph_t *agmemread(char *); extern void agsetiodisc( - size_t (*myfread) (void *ptr, size_t size, size_t nmemb, FILE *stream), + char * (*myfgets) (char *s, int size, FILE *stream), size_t (*myfwrite) (const void *ptr, size_t size, size_t nmemb, FILE *stream), int (*myferror) (FILE *stream) ); extern void agfprintf(FILE *fp, const char *format, ...); diff --git a/lib/graph/graphio.c b/lib/graph/graphio.c index 798827614..bc0116fa8 100644 --- a/lib/graph/graphio.c +++ b/lib/graph/graphio.c @@ -178,12 +178,12 @@ char *agstrcanon(char *arg, char *buf) } void agsetiodisc( - size_t (*myfread) (void *ptr, size_t size, size_t nmemb, FILE *stream), + char * (*myfgets) (char *s, int size, FILE *stream), size_t (*myfwrite) (const void *ptr, size_t size, size_t nmemb, FILE *stream), int (*myferror) (FILE *stream) ) { - if (myfread) AG.fread = myfread; + if (myfgets) AG.fgets = myfgets; if (myfwrite) AG.fwrite = myfwrite; #if defined(__SUNPRO_C) || defined(__CYGWIN__) #undef ferror diff --git a/lib/graph/libgraph.h b/lib/graph/libgraph.h index c54225e33..77d810aa1 100644 --- a/lib/graph/libgraph.h +++ b/lib/graph/libgraph.h @@ -129,7 +129,7 @@ extern "C" { char *linebuf; short syntax_errors; unsigned char accepting_state, init_called; - size_t (*fread) (void *ptr, size_t size, size_t nmemb, FILE *stream); + char * (*fgets) (char *s, int size, FILE *stream); size_t (*fwrite) (const void *ptr, size_t size, size_t nmemb, FILE *stream); int (*ferror) (FILE *stream); } AG;