|
|
1.1 ! root 1: #include "f2c.h" ! 2: #include "fio.h" ! 3: int reclen; ! 4: do_us(number,ptr,len) ftnint *number; ftnlen len; char *ptr; ! 5: { ! 6: if(reading) ! 7: { ! 8: recpos += *number * len; ! 9: if(recpos>reclen) ! 10: { ! 11: err(elist->ciend,(-1), "eof/uio"); ! 12: } ! 13: (void) fread(ptr,(int)len,(int)(*number),cf); ! 14: return(0); ! 15: } ! 16: else ! 17: { ! 18: reclen += *number * len; ! 19: (void) fwrite(ptr,(int)len,(int)(*number),cf); ! 20: return(0); ! 21: } ! 22: } ! 23: integer do_uio(number,ptr,len) ftnint *number; ftnlen len; char *ptr; ! 24: { ! 25: if(sequential) ! 26: return(do_us(number,ptr,len)); ! 27: else return(do_ud(number,ptr,len)); ! 28: } ! 29: do_ud(number,ptr,len) ftnint *number; ftnlen len; char *ptr; ! 30: { ! 31: recpos += *number * len; ! 32: if(recpos > curunit->url && curunit->url!=1) ! 33: err(elist->cierr,110,"eof/uio"); ! 34: if(reading) ! 35: { ! 36: if(fread(ptr,(int)len,(int)(*number),cf) ! 37: != *number) ! 38: err(elist->cierr,27,"eof/uio") ! 39: else return(0); ! 40: } ! 41: (void) fwrite(ptr,(int)len,(int)(*number),cf); ! 42: return(0); ! 43: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.