cbfstool: Don't use fileno() to get file size

fileno() is a mess on some operating systems. Don't
deliberately convert between FILE * and file handles.

Change-Id: I5be62a731f928333ea2e5843d81f541453fdb396
Signed-off-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Reviewed-on: http://review.coreboot.org/11636
Tested-by: build bot (Jenkins)
Reviewed-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
This commit is contained in:
Stefan Reinauer 2015-09-14 10:46:44 -07:00 committed by Stefan Reinauer
parent d66f1da846
commit 1bb487c474
1 changed files with 6 additions and 6 deletions

View File

@ -46,14 +46,14 @@ int is_big_endian(void)
static off_t get_file_size(FILE *f)
{
struct stat s;
int fd = fileno(f);
if (fd == -1) return -1;
if (fstat(fd, &s) == -1) return -1;
return s.st_size;
off_t fsize;
fseek(f, 0, SEEK_END);
fsize = ftell(f);
fseek(f, 0, SEEK_SET);
return fsize;
}
/* Buffer and file I/O */
/* Buffer and file I/O */
int buffer_create(struct buffer *buffer, size_t size, const char *name)
{
buffer->name = strdup(name);