=================================================================== RCS file: /home/cvs/OpenXM/rc/repl.c,v retrieving revision 1.2 retrieving revision 1.19 diff -u -p -r1.2 -r1.19 --- OpenXM/rc/repl.c 2000/01/19 06:10:33 1.2 +++ OpenXM/rc/repl.c 2020/10/07 23:57:57 1.19 @@ -1,23 +1,125 @@ -/* $OpenXM: OpenXM/rc/repl.c,v 1.1 2000/01/18 09:38:58 takayama Exp $ */ +/* $OpenXM: OpenXM/rc/repl.c,v 1.18 2019/03/29 02:49:48 takayama Exp $ */ + #include +#include + +#include +#include +#include #include #define BUFSIZE 10000 -main() { +#define SSIZE 1024 + +/* If you make the following two strings longer, increase the number SSIZE */ +#define REPL_IMGFILE "repl_test.img" +#define REPL_PSFILE "repl_test.ps" + +int +main(int argc,char *argv[]) { char s[BUFSIZE]; char cwd[BUFSIZE]; - getcwd(cwd,BUFSIZE); + char *slash; + char type = 'b'; + FILE *fp; + int fd,i; + char sss_png[SSIZE]; + char sss_gif[SSIZE]; + + if (getcwd(cwd, sizeof(cwd)) == NULL) { + fprintf(stderr, "getcwd: %s\n", strerror(errno)); + exit(EXIT_FAILURE); + } + if ((slash = strrchr(cwd, '/')) == cwd) { + fprintf(stderr, "The current working directory is /.\n"); + exit(EXIT_FAILURE); + } + *slash = 0; + + for (i=1; i/dev/null",REPL_PSFILE,REPL_IMGFILE); + sprintf(sss_gif,"pstoimg -type gif %s -out %s >/dev/null",REPL_PSFILE,REPL_IMGFILE); + if (!system(sss_png)) { + if (type == 'b') { + printf("export OpenXM_PSTOIMG_TYPE=png\n"); + }else{ + printf("setenv OpenXM_PSTOIMG_TYPE png\n"); + } + }else if (!system(sss_gif)) { + if (type == 'b') { + printf("OpenXM_PSTOIMG_TYPE=gif\n"); + printf("export OpenXM_PSTOIMG_TYPE\n"); + }else{ + printf("setenv OpenXM_PSTOIMG_TYPE=gif\n"); + } + }else { + if (type == 'b') { + printf("OpenXM_PSTOIMG_TYPE=no\n"); + printf("export OpenXM_PSTOIMG_TYPE\n"); + }else{ + printf("setenv OpenXM_PSTOIMG_TYPE no\n"); + } + } + + while (unlink(REPL_IMGFILE) != 0) { + if (errno == EINTR) + continue; + break; + } + while (unlink(REPL_PSFILE) != 0) { + if (errno == EINTR) + continue; + break; + } + + exit(EXIT_SUCCESS); +}