Eina rectangle missing list init.
authorbarbieri <barbieri@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Tue, 21 Jul 2009 01:55:31 +0000 (01:55 +0000)
committerbarbieri <barbieri@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Tue, 21 Jul 2009 01:55:31 +0000 (01:55 +0000)
Rectangle needs the list module for the pool_new() function. Patch
also adds a check for initialization error on the unit test.

By: Andre Dieb

git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@41460 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/eina_rectangle.c
src/tests/eina_test_rectangle.c

index c72fc04..43babe8 100644 (file)
@@ -242,6 +242,12 @@ eina_rectangle_init(void)
         goto mempool_init_error;
      }
 
+   if (!eina_list_init())
+     {
+       EINA_ERROR_PERR("Could not initialize eina list module.\n");
+       goto list_init_error;
+     }
+
 #ifdef EINA_DEFAULT_MEMPOOL
    choice = "pass_through";
 #else
@@ -267,6 +273,8 @@ eina_rectangle_init(void)
    return _eina_rectangle_init_count;
 
  init_error:
+   eina_list_shutdown();
+ list_init_error:
    eina_mempool_shutdown();
  mempool_init_error:
    eina_error_shutdown();
@@ -281,6 +289,8 @@ eina_rectangle_shutdown(void)
 
    if (_eina_rectangle_init_count) return _eina_rectangle_init_count;
 
+   eina_list_shutdown();
+
    eina_mempool_del(_eina_rectangle_alloc_mp);
    eina_mempool_del(_eina_rectangle_mp);
 
index 307bcb1..e50950d 100644 (file)
@@ -34,7 +34,7 @@ START_TEST(eina_rectangle_pool)
    int w;
    int h;
 
-   eina_rectangle_init();
+   fail_if(!eina_rectangle_init());
 
    pool = eina_rectangle_pool_new(256, 256);
    fail_if(pool == NULL);