version 1.7, 2003/11/23 13:16:30 |
version 1.9, 2004/02/23 09:03:43 |
|
|
/*$OpenXM: OpenXM/src/kan96xx/plugin/file2.c,v 1.6 2003/11/18 11:08:27 takayama Exp $ */ |
/*$OpenXM: OpenXM/src/kan96xx/plugin/file2.c,v 1.8 2003/11/24 08:16:13 takayama Exp $ */ |
#include <stdio.h> |
#include <stdio.h> |
#include <sys/time.h> |
#include <sys/time.h> |
#include <sys/types.h> |
#include <sys/types.h> |
Line 17 or define FORSTRING |
|
Line 17 or define FORSTRING |
|
#endif |
#endif |
|
|
#ifdef KXX |
#ifdef KXX |
#define GC_malloc(n) malloc(n) |
#define sGC_malloc(n) malloc(n) |
#else |
#else |
void *GC_malloc(int size); |
void *sGC_malloc(int size); |
#endif |
#endif |
int WatchStream = 0; |
int WatchStream = 0; |
/* Note: 1997, 12/6 cf. SS475/kxx/openxxx.tex, SS475/memo1.txt |
/* Note: 1997, 12/6 cf. SS475/kxx/openxxx.tex, SS475/memo1.txt |
Line 49 FILE2 *fp2open(int fd) { |
|
Line 49 FILE2 *fp2open(int fd) { |
|
if (debug1) { |
if (debug1) { |
printf("fp2open is called. \n"); |
printf("fp2open is called. \n"); |
} |
} |
fp2 = (FILE2 *) GC_malloc(sizeof(FILE2)); |
fp2 = (FILE2 *) sGC_malloc(sizeof(FILE2)); |
if (fd < -1) { |
if (fd < -1) { |
fprintf(stderr,"fp2open Invalid file descriptor %d\n",fd); |
fprintf(stderr,"fp2open Invalid file descriptor %d\n",fd); |
return(NULL); |
return(NULL); |
Line 66 FILE2 *fp2open(int fd) { |
|
Line 66 FILE2 *fp2open(int fd) { |
|
fp2->readsize = 0; |
fp2->readsize = 0; |
fp2->writepos = 0; |
fp2->writepos = 0; |
fp2->limit = FILE2BSIZE; |
fp2->limit = FILE2BSIZE; |
fp2->readBuf = (char *) GC_malloc(FILE2BSIZE); |
fp2->readBuf = (char *) sGC_malloc(FILE2BSIZE); |
fp2->writeBuf = (char *) GC_malloc(FILE2BSIZE); |
fp2->writeBuf = (char *) sGC_malloc(FILE2BSIZE); |
if ((fp2->readBuf == NULL) || (fp2->writeBuf == NULL)) { |
if ((fp2->readBuf == NULL) || (fp2->writeBuf == NULL)) { |
fprintf(stderr,"fp2open. No more memory.\n"); |
fprintf(stderr,"fp2open. No more memory.\n"); |
return(NULL); |
return(NULL); |
Line 329 static int fp2fputcString(int c,FILE2 *fp2) { |
|
Line 329 static int fp2fputcString(int c,FILE2 *fp2) { |
|
return(-1); |
return(-1); |
} |
} |
newsize = (fp2->limit)*2; |
newsize = (fp2->limit)*2; |
newwrite = (char *)GC_malloc(newsize); |
newwrite = (char *)sGC_malloc(newsize); |
newread = (char *)GC_malloc(newsize); |
newread = (char *)sGC_malloc(newsize); |
if ((newwrite == NULL) || (newread == NULL)) { |
if ((newwrite == NULL) || (newread == NULL)) { |
fprintf(stderr,"fp2fputcString: No more memory.\n"); |
fprintf(stderr,"fp2fputcString: No more memory.\n"); |
return(-1); |
return(-1); |
Line 356 char *fp2fcloseInString(FILE2 *fp2, int *sizep) |
|
Line 356 char *fp2fcloseInString(FILE2 *fp2, int *sizep) |
|
}else{ |
}else{ |
fprintf(stderr,"fp2fcloseInString is called for a file stream that is not associated to a string.\n"); |
fprintf(stderr,"fp2fcloseInString is called for a file stream that is not associated to a string.\n"); |
} |
} |
|
} |
|
|
|
int fp2fputs(char *s,FILE2 *fp) { |
|
int i,n; |
|
n = strlen(s); |
|
for (i=0; i<n; i++) { |
|
if (fp2fputc(s[i],fp) < 0) return(-1); |
|
} |
|
return(0); |
} |
} |
|
|
/* Sample program FORSTRING |
/* Sample program FORSTRING |