]> source.dussan.org Git - rspamd.git/commitdiff
Fix uintptr conversions.
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Wed, 27 May 2015 16:01:30 +0000 (17:01 +0100)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Wed, 27 May 2015 16:01:30 +0000 (17:01 +0100)
src/libserver/symbols_cache.c

index e04e92b2d38436a8fb53438f75ad2604ef0b4e7c..96b59e5c1a64391f7ea92a163fa6187985b1be33 100644 (file)
@@ -618,20 +618,10 @@ call_symbol_callback (struct rspamd_task * task,
        double t1, t2;
        guint64 diff;
        struct cache_item *item = NULL;
-       guint *s = *save;
-       guint idx;
+       guintptr idx = GPOINTER_TO_UINT (*save);
 
        g_assert (cache != NULL);
 
-       if (s == NULL) {
-               s =
-                       rspamd_mempool_alloc0 (task->task_pool,
-                               sizeof (gpointer));
-               *save = s;
-       }
-
-       idx = GPOINTER_TO_INT (s);
-
        if (idx >= cache->used_items) {
                /* All symbols are processed */
                return FALSE;
@@ -662,8 +652,7 @@ call_symbol_callback (struct rspamd_task * task,
        }
 
        idx ++;
-       s = GINT_TO_POINTER (idx);
-       *save = s;
+       *save = GUINT_TO_POINTER (idx);
 
        return TRUE;