Lines Matching refs:lf

169     struct loadedfile *lf;          /* loadedfile object, if any */  member
395 struct loadedfile *lf; in loadedfile_create() local
397 lf = bmake_malloc(sizeof(*lf)); in loadedfile_create()
398 lf->path = (path == NULL ? "(stdin)" : path); in loadedfile_create()
399 lf->buf = NULL; in loadedfile_create()
400 lf->len = 0; in loadedfile_create()
401 lf->maplen = 0; in loadedfile_create()
402 lf->used = FALSE; in loadedfile_create()
403 return lf; in loadedfile_create()
407 loadedfile_destroy(struct loadedfile *lf) in loadedfile_destroy() argument
409 if (lf->buf != NULL) { in loadedfile_destroy()
410 if (lf->maplen > 0) { in loadedfile_destroy()
412 munmap(lf->buf, lf->maplen); in loadedfile_destroy()
415 free(lf->buf); in loadedfile_destroy()
418 free(lf); in loadedfile_destroy()
428 struct loadedfile *lf = x; in loadedfile_nextbuf() local
430 if (lf->used) { in loadedfile_nextbuf()
433 lf->used = TRUE; in loadedfile_nextbuf()
434 *len = lf->len; in loadedfile_nextbuf()
435 return lf->buf; in loadedfile_nextbuf()
484 struct loadedfile *lf; in loadfile() local
491 lf = loadedfile_create(path); in loadfile()
508 if (load_getsize(fd, &lf->len) == SUCCESS) { in loadfile()
515 lf->maplen = pagesize * ((lf->len + pagesize - 1)/pagesize); in loadfile()
522 if (lf->maplen == 0) { in loadfile()
523 lf->maplen = pagesize; in loadfile()
530 lf->buf = mmap(NULL, lf->maplen, PROT_READ|PROT_WRITE, in loadfile()
532 if (lf->buf != MAP_FAILED) { in loadfile()
534 if (lf->len == lf->maplen && lf->buf[lf->len - 1] != '\n') { in loadfile()
535 char *b = malloc(lf->len + 1); in loadfile()
536 b[lf->len] = '\n'; in loadfile()
537 memcpy(b, lf->buf, lf->len++); in loadfile()
538 munmap(lf->buf, lf->maplen); in loadfile()
539 lf->maplen = 0; in loadfile()
540 lf->buf = b; in loadfile()
548 lf->maplen = 0; in loadfile()
549 lf->len = 1024; in loadfile()
550 lf->buf = bmake_malloc(lf->len); in loadfile()
554 assert(bufpos <= lf->len); in loadfile()
555 if (bufpos == lf->len) { in loadfile()
556 lf->len *= 2; in loadfile()
557 lf->buf = bmake_realloc(lf->buf, lf->len); in loadfile()
559 result = read(fd, lf->buf + bufpos, lf->len - bufpos); in loadfile()
569 assert(bufpos <= lf->len); in loadfile()
570 lf->len = bufpos; in loadfile()
573 if (lf->len > 0) { in loadfile()
574 lf->buf = bmake_realloc(lf->buf, lf->len); in loadfile()
583 return lf; in loadfile()
2084 struct loadedfile *lf; in Parse_include_file() local
2176 lf = loadfile(fullname, fd); in Parse_include_file()
2179 Parse_SetInput(fullname, 0, -1, loadedfile_nextbuf, lf); in Parse_include_file()
2180 curFile->lf = lf; in Parse_include_file()
2358 curFile->lf = NULL; in Parse_SetInput()
2529 if (curFile->lf != NULL) { in ParseEOF()
2530 loadedfile_destroy(curFile->lf); in ParseEOF()
2531 curFile->lf = NULL; in ParseEOF()
2845 struct loadedfile *lf; in Parse_File() local
2847 lf = loadfile(name, fd); in Parse_File()
2856 Parse_SetInput(name, 0, -1, loadedfile_nextbuf, lf); in Parse_File()
2857 curFile->lf = lf; in Parse_File()