diff options
author | Øyvind Harboe <oyvind.harboe@zylin.com> | 2010-09-29 09:11:01 +0200 |
---|---|---|
committer | Øyvind Harboe <oyvind.harboe@zylin.com> | 2010-09-29 18:56:07 +0200 |
commit | 3931b99d142d337ea6558fd09aad2e0812c04507 (patch) | |
tree | 20ca8392b75964e038b941b607dcce8162513b2d /src/helper | |
parent | 3a693ef526575633cc350a69aa1a5d1f08e64c46 (diff) | |
download | openocd+libswd-3931b99d142d337ea6558fd09aad2e0812c04507.tar.gz openocd+libswd-3931b99d142d337ea6558fd09aad2e0812c04507.tar.bz2 openocd+libswd-3931b99d142d337ea6558fd09aad2e0812c04507.tar.xz openocd+libswd-3931b99d142d337ea6558fd09aad2e0812c04507.zip |
fileio: fileio_size() can now fail
Part of making the fileio API more robust.
Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
Diffstat (limited to 'src/helper')
-rw-r--r-- | src/helper/fileio.c | 14 | ||||
-rw-r--r-- | src/helper/fileio.h | 2 |
2 files changed, 13 insertions, 3 deletions
diff --git a/src/helper/fileio.c b/src/helper/fileio.c index 7c862e47..9ae01344 100644 --- a/src/helper/fileio.c +++ b/src/helper/fileio.c @@ -245,8 +245,18 @@ int fileio_write_u32(struct fileio *fileio_p, uint32_t data) return retval; } -int fileio_size(struct fileio *fileio_p) +/** + * FIX!!!! + * + * For now this can not fail, but that's because a seek was executed + * on startup. + * + * Avoiding the seek on startup opens up for using streams. + * + */ +int fileio_size(struct fileio *fileio_p, int *size) { struct fileio_internal *fileio = fileio_p->fp; - return fileio->size; + *size = fileio->size; + return ERROR_OK; } diff --git a/src/helper/fileio.h b/src/helper/fileio.h index 40c4ef0e..fa499ab7 100644 --- a/src/helper/fileio.h +++ b/src/helper/fileio.h @@ -66,7 +66,7 @@ int fileio_write(struct fileio *fileio, int fileio_read_u32(struct fileio *fileio, uint32_t *data); int fileio_write_u32(struct fileio *fileio, uint32_t data); -int fileio_size(struct fileio *fileio); +int fileio_size(struct fileio *fileio, int *size); #define ERROR_FILEIO_LOCATION_UNKNOWN (-1200) #define ERROR_FILEIO_NOT_FOUND (-1201) |