summaryrefslogtreecommitdiffstats
path: root/src/worker.c
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@rambler-co.ru>2009-01-16 17:02:26 +0300
committerVsevolod Stakhov <vsevolod@rambler-co.ru>2009-01-16 17:02:26 +0300
commitfe5ad5874aad220fb12a259e607f89ce5fae7465 (patch)
treee22215da4087e82926bf3797469a4e00914e8c1e /src/worker.c
parentd0681272065a04de5e8249b782ac7f9efa938555 (diff)
downloadrspamd-fe5ad5874aad220fb12a259e607f89ce5fae7465.tar.gz
rspamd-fe5ad5874aad220fb12a259e607f89ce5fae7465.zip
* Add simple utility for sending mail to rspamd
* Fix some errors in freeing message object
Diffstat (limited to 'src/worker.c')
-rw-r--r--src/worker.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/src/worker.c b/src/worker.c
index bcbea640e..4a6f9acdd 100644
--- a/src/worker.c
+++ b/src/worker.c
@@ -87,8 +87,7 @@ free_task (struct worker_task *task)
}
while (!TAILQ_EMPTY (&task->parts)) {
part = TAILQ_FIRST (&task->parts);
- g_object_unref (part->type);
- g_object_unref (part->content);
+ g_byte_array_free (part->content, FALSE);
TAILQ_REMOVE (&task->parts, part, next);
}
memory_pool_delete (task->task_pool);
@@ -222,6 +221,7 @@ read_socket (struct bufferevent *bev, void *arg)
r = bufferevent_read (bev, task->msg->pos, task->msg->free);
if (r > 0) {
task->msg->pos += r;
+ msg_debug ("read_socket: read %zd bytes from socket, %zd bytes left", r, task->msg->free);
update_buf_size (task->msg);
if (task->msg->free == 0) {
r = process_message (task);
@@ -244,9 +244,8 @@ read_socket (struct bufferevent *bev, void *arg)
}
}
else {
- msg_err ("read_socket: cannot read data to buffer: %ld", (long int)r);
+ msg_warn ("read_socket: cannot read data to buffer (free space: %zd): %ld", task->msg->free, (long int)r);
bufferevent_disable (bev, EV_READ);
- bufferevent_free (bev);
free_task (task);
}
break;