1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-03 13:47:25 +03:00

Check x_fflush returns.

Jeremy.
(This used to be commit 5525dc5f09a79d30f6c52fc3a88c8bce3060e642)
This commit is contained in:
Jeremy Allison 2008-04-08 15:08:47 -07:00
parent 51d9e913bb
commit b360cdfeb9

View File

@ -47,7 +47,7 @@ XFILE *x_stderr = &_x_stderr;
/* simulate setvbuf() */
int x_setvbuf(XFILE *f, char *buf, int mode, size_t size)
{
x_fflush(f);
if (x_fflush(f) != 0) return -1;
if (f->bufused) return -1;
/* on files being read full buffering is the only option */
@ -150,7 +150,7 @@ int x_fclose(XFILE *f)
int ret;
/* make sure we flush any buffered data */
x_fflush(f);
(void)x_fflush(f);
ret = close(f->fd);
f->fd = -1;
@ -189,7 +189,9 @@ size_t x_fwrite(const void *p, size_t size, size_t nmemb, XFILE *f)
if (n == 0) {
/* it's full, flush it */
x_fflush(f);
if (x_fflush(f) != 0) {
return -1;
}
continue;
}
@ -204,7 +206,9 @@ size_t x_fwrite(const void *p, size_t size, size_t nmemb, XFILE *f)
int i;
for (i=(size*nmemb)-1; i>=0; i--) {
if (*(i+(const char *)p) == '\n') {
x_fflush(f);
if (x_fflush(f) != 0) {
return -1;
}
break;
}
}