]> source.dussan.org Git - rspamd.git/commitdiff
* Fix using of local variable
authorVsevolod Stakhov <vsevolod@rambler-co.ru>
Wed, 25 Mar 2009 14:46:50 +0000 (17:46 +0300)
committerVsevolod Stakhov <vsevolod@rambler-co.ru>
Wed, 25 Mar 2009 14:46:50 +0000 (17:46 +0300)
src/message.c
src/worker.c

index 6d770bbe8d52e46ee44e6a4626e8740bd2c8238b..d1834c9688112c8c07021ba14d69124a59386f2d 100644 (file)
@@ -211,8 +211,10 @@ reg_char:
                                } 
                                break;
                }
-               c = *(++p);
                i++;
+               if (i < src->len) {
+                       c = *(++p);
+               }
        }       
        if (rp < buf->data + src->len) {
                *rp = '\0';
index 1ec5a64dda3745c0daa267cf557ce6e285f28655..cf716ee0ddd417bbaa47db00a582fc7b76ae92d1 100644 (file)
@@ -143,7 +143,9 @@ read_socket (f_str_t *in, void *arg)
                        }
                        break;
                case READ_MESSAGE:
-                       task->msg = in;
+                       task->msg = memory_pool_alloc (task->task_pool, sizeof (f_str_t));
+                       task->msg->begin = in->begin;
+                       task->msg->len = in->len;
                        msg_debug ("read_socket: got string of length %ld", (long int)task->msg->len);
                        r = process_message (task);
             if (r == -1) {