/*
- * Copyright (C) 2006-2008 Andre Noll <maan@systemlinux.org>
+ * Copyright (C) 2006-2009 Andre Noll <maan@tuebingen.mpg.de>
*
* Licensed under the GPL v2. For licencing details see COPYING.
*/
*len = 0;
while (*len < total) {
int ret = __write(fd, buf + *len, total - *len);
- if (ret < 0)
+ if (ret < 0) {
+ ERROR_LOG("write error: %s\n", strerror(errno));
return ret;
+ }
*len += ret;
}
return 1;
if (ret < 0)
return ret;
fd = ret;
- ret = write_all(fd, buf, &size);
- if (ret < 0)
- goto out;
+ if (size != 0) {
+ ret = write_all(fd, buf, &size);
+ if (ret < 0)
+ goto out;
+ }
ret = 1;
out:
close(fd);