[BACK]Return to ox_pathfinder.c CVS log [TXT][DIR] Up to [local] / OpenXM / src / util

Diff for /OpenXM/src/util/ox_pathfinder.c between version 1.5 and 1.6

version 1.5, 2003/07/22 03:25:56 version 1.6, 2003/07/22 07:39:57
Line 1 
Line 1 
 /* $OpenXM: OpenXM/src/util/ox_pathfinder.c,v 1.4 2003/07/21 13:36:43 takayama Exp $ */  /* $OpenXM: OpenXM/src/util/ox_pathfinder.c,v 1.5 2003/07/22 03:25:56 takayama Exp $ */
 /* Moved from misc-2003/07/cygwin/test.c */  /* Moved from misc-2003/07/cygwin/test.c */
   
 #include <stdio.h>  #include <stdio.h>
Line 791  char *generateTMPfileName(char *seed) {
Line 791  char *generateTMPfileName(char *seed) {
   char *fname;    char *fname;
   char *tt;    char *tt;
   int num;    int num;
     static int prevnum=0;
      /* Bugs for k0.
         (1) unlink does not work so, load["t.k"];; load["t.k"];; fails (only cygwin.
         (2) In case of  error, TMP file is not removed. cf KCerror().
        In case of cygwin, we can only load 90 times.
      */
   int i;    int i;
   int clean = 0;    int clean = 0;
   tmp = getenv("TMP");    tmp = getenv("TMP");
Line 808  char *generateTMPfileName(char *seed) {
Line 814  char *generateTMPfileName(char *seed) {
     fname = (char *)mymalloc(strlen(seed)+40);      fname = (char *)mymalloc(strlen(seed)+40);
     if (fname == NULL) nomemory(fname);      if (fname == NULL) nomemory(fname);
   }    }
   for (num=0; num <100; num++) {    for (num=prevnum+1; num <100; num++) {
     if (tmp != NULL) {      if (tmp != NULL) {
       sprintf(fname,"%s/%s-tmp-%d.txt",tmp,seed,num);        sprintf(fname,"%s/%s-tmp-%d.txt",tmp,seed,num);
     }else{      }else{
       sprintf(fname,"%s-tmp-%d.txt",seed,num);        sprintf(fname,"%s-tmp-%d.txt",seed,num);
     }      }
     if (getFileSize(fname) < 0) return fname;      if (getFileSize(fname) < 0) {
     else {        prevnum = num;
         return fname;
       } else {
       if ((num > 90) && (!clean)) {        if ((num > 90) && (!clean)) {
         /* Clean the old garbages. */          /* Clean the old garbages. */
         for (i=0; i<100; i++) {          for (i=0; i<100; i++) {
Line 842  char *generateTMPfileName(char *seed) {
Line 850  char *generateTMPfileName(char *seed) {
 #endif  #endif
           }            }
         }          }
         num = 0; clean=1;          num = 0; clean=1; prevnum=0;
       }        }
     }      }
   }    }

Legend:
Removed from v.1.5  
changed lines
  Added in v.1.6

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>