summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/core/rawlog.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/core/rawlog.c b/src/core/rawlog.c
index e66f20dd..2fa6b850 100644
--- a/src/core/rawlog.c
+++ b/src/core/rawlog.c
@@ -102,14 +102,15 @@ void rawlog_redirect(RAWLOG_REC *rawlog, const char *str)
static void rawlog_dump(RAWLOG_REC *rawlog, int f)
{
GSList *tmp;
- ssize_t ret = 1;
+ ssize_t ret = 0;
- for (tmp = rawlog->lines; ret && tmp != NULL; tmp = tmp->next) {
+ for (tmp = rawlog->lines; ret != -1 && tmp != NULL; tmp = tmp->next) {
ret = write(f, tmp->data, strlen((char *) tmp->data));
- ret &= write(f, "\n", 1);
- }
+ if (ret != -1)
+ ret = write(f, "\n", 1);
+ }
- if (ret <= 0) {
+ if (ret == -1) {
g_warning("rawlog write() failed: %s", strerror(errno));
}
}