diff options
Diffstat (limited to 'Build/source/utils/asymptote/interact.cc')
-rw-r--r-- | Build/source/utils/asymptote/interact.cc | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/Build/source/utils/asymptote/interact.cc b/Build/source/utils/asymptote/interact.cc index 2a6c37e8811..51373077fcf 100644 --- a/Build/source/utils/asymptote/interact.cc +++ b/Build/source/utils/asymptote/interact.cc @@ -85,10 +85,20 @@ FILE *fin=NULL; char *readpipeline(const char *prompt) { + const int max_size=256; + static char buf[max_size]; + ostringstream s; + do { + if(fgets(buf,max_size-1,fin) == NULL) break; + s << buf; + } while(buf[strlen(buf)-1] != '\n'); + return StrdupMalloc(s.str()); + /* Simpler version (requires POSIX 2008; temporarily removed for TeXLive 2013): char *line=NULL; size_t n; n=getline(&line,&n,fin); return line; + */ } void pre_readline() |