Am Sonntag, 20. Dezember 2009 02:39 schrieb Kirill A. Shutemov: > CC block/vvfat.o > cc1: warnings being treated as errors > block/vvfat.c: In function 'commit_one_file': > block/vvfat.c:2259: error: ignoring return value of 'ftruncate', declared with attribute warn_unused_result > make: *** [block/vvfat.o] Error 1 > CC block/vvfat.o > In file included from /usr/include/stdio.h:912, > from ./qemu-common.h:19, > from block/vvfat.c:27: > In function 'snprintf', > inlined from 'init_directories' at block/vvfat.c:871, > inlined from 'vvfat_open' at block/vvfat.c:1068: > /usr/include/bits/stdio2.h:65: error: call to __builtin___snprintf_chk will always overflow destination buffer > make: *** [block/vvfat.o] Error 1 > > Signed-off-by: Kirill A. Shutemov <kir...@shutemov.name> > --- > block/vvfat.c | 5 +++-- > 1 files changed, 3 insertions(+), 2 deletions(-) > > diff --git a/block/vvfat.c b/block/vvfat.c > index 063f731..7b6a405 100644 > --- a/block/vvfat.c > +++ b/block/vvfat.c > @@ -868,7 +868,8 @@ static int init_directories(BDRVVVFATState* s, > { > direntry_t* entry=array_get_next(&(s->directory)); > entry->attributes=0x28; /* archive | volume label */ > - snprintf((char*)entry->name,11,"QEMU VVFAT"); > + snprintf((char*)entry->name,8,"QEMU VV"); > + snprintf((char*)entry->extension,3,"FAT"); > } > > /* Now build FAT, and write back information into directory */ > @@ -2256,7 +2257,7 @@ static int commit_one_file(BDRVVVFATState* s, > c = c1; > } > > - ftruncate(fd, size); > + assert(!ftruncate(fd, size));
Don't use expressions with side effects for assertions. If anyone compiles with NDEBUG defined, the ftruncate will be missing. Kevin