Title: [109205] trunk/Source/WebKit/efl
Revision
109205
Author
commit-qu...@webkit.org
Date
2012-02-29 00:58:22 -0800 (Wed, 29 Feb 2012)

Log Message

[EFL] Replace malloc/calloc/free to new/delete.
https://bugs.webkit.org/show_bug.cgi?id=75848

Patch by Tomasz Morawski <t.moraw...@samsung.com> on 2012-02-29
Reviewed by Hajime Morita.

Replaced almost all malloc/calloc/free to new/delete operator and where it was possible smart pointers were also
used. Left few c memory allocation by intention to not mix c and c++ memory managment. Left malloc for Ewk_Tile
object due to const fields present in Ewk_tile structure.

* ewk/ewk_auth_soup.cpp:
* ewk/ewk_contextmenu.cpp:
(ewk_context_menu_unref):
(ewk_context_menu_item_new):
(ewk_context_menu_item_free):
(ewk_context_menu_new):
* ewk/ewk_cookies.cpp:
(ewk_cookies_get_all):
(ewk_cookies_cookie_free):
* ewk/ewk_frame.cpp:
(ewk_frame_hit_test_free):
(ewk_frame_hit_test_new):
* ewk/ewk_history.cpp:
(ewk_history_item_new_from_core):
(_ewk_history_item_free):
(ewk_history_new):
(ewk_history_free):
* ewk/ewk_tiled_backing_store.cpp:
(_Ewk_Tiled_Backing_Store_Item):
(_ewk_tiled_backing_store_pre_render_request_add):
(_ewk_tiled_backing_store_pre_render_request_del):
(_ewk_tiled_backing_store_pre_render_request_flush):
(_ewk_tiled_backing_store_pre_render_request_clear):
(_ewk_tiled_backing_store_item_add):
(_ewk_tiled_backing_store_item_del):
* ewk/ewk_tiled_matrix.cpp:
(_ewk_tile_matrix_tile_free):
(ewk_tile_matrix_new):
(ewk_tile_matrix_zoom_level_set):
(ewk_tile_matrix_invalidate):
(ewk_tile_matrix_free):
* ewk/ewk_tiled_model.cpp:
(tile_account):
(ewk_tile_unused_cache_new):
(_ewk_tile_unused_cache_free):
(ewk_tile_unused_cache_clear):
(ewk_tile_unused_cache_flush):
(ewk_tile_unused_cache_tile_get):
(ewk_tile_unused_cache_tile_put):
* ewk/ewk_tiled_private.h:
* ewk/ewk_view.cpp:
(_Ewk_View_Private_Data):
(_ewk_view_core_frame_new):
(_ewk_view_priv_new):
(_ewk_view_priv_del):
(ewk_view_core_page_get):
(ewk_view_popup_new):
(ewk_view_popup_destroy):
(EWKPrivate::corePage):
* ewk/ewk_window_features.cpp:
(ewk_window_features_unref):
(ewk_window_features_new_from_core):

Modified Paths

Diff

Modified: trunk/Source/WebKit/efl/ChangeLog (109204 => 109205)


--- trunk/Source/WebKit/efl/ChangeLog	2012-02-29 08:29:38 UTC (rev 109204)
+++ trunk/Source/WebKit/efl/ChangeLog	2012-02-29 08:58:22 UTC (rev 109205)
@@ -1,3 +1,67 @@
+2012-02-29  Tomasz Morawski  <t.moraw...@samsung.com>
+
+        [EFL] Replace malloc/calloc/free to new/delete.
+        https://bugs.webkit.org/show_bug.cgi?id=75848
+
+        Reviewed by Hajime Morita.
+
+        Replaced almost all malloc/calloc/free to new/delete operator and where it was possible smart pointers were also
+        used. Left few c memory allocation by intention to not mix c and c++ memory managment. Left malloc for Ewk_Tile
+        object due to const fields present in Ewk_tile structure.
+
+        * ewk/ewk_auth_soup.cpp:
+        * ewk/ewk_contextmenu.cpp:
+        (ewk_context_menu_unref):
+        (ewk_context_menu_item_new):
+        (ewk_context_menu_item_free):
+        (ewk_context_menu_new):
+        * ewk/ewk_cookies.cpp:
+        (ewk_cookies_get_all):
+        (ewk_cookies_cookie_free):
+        * ewk/ewk_frame.cpp:
+        (ewk_frame_hit_test_free):
+        (ewk_frame_hit_test_new):
+        * ewk/ewk_history.cpp:
+        (ewk_history_item_new_from_core):
+        (_ewk_history_item_free):
+        (ewk_history_new):
+        (ewk_history_free):
+        * ewk/ewk_tiled_backing_store.cpp:
+        (_Ewk_Tiled_Backing_Store_Item):
+        (_ewk_tiled_backing_store_pre_render_request_add):
+        (_ewk_tiled_backing_store_pre_render_request_del):
+        (_ewk_tiled_backing_store_pre_render_request_flush):
+        (_ewk_tiled_backing_store_pre_render_request_clear):
+        (_ewk_tiled_backing_store_item_add):
+        (_ewk_tiled_backing_store_item_del):
+        * ewk/ewk_tiled_matrix.cpp:
+        (_ewk_tile_matrix_tile_free):
+        (ewk_tile_matrix_new):
+        (ewk_tile_matrix_zoom_level_set):
+        (ewk_tile_matrix_invalidate):
+        (ewk_tile_matrix_free):
+        * ewk/ewk_tiled_model.cpp:
+        (tile_account):
+        (ewk_tile_unused_cache_new):
+        (_ewk_tile_unused_cache_free):
+        (ewk_tile_unused_cache_clear):
+        (ewk_tile_unused_cache_flush):
+        (ewk_tile_unused_cache_tile_get):
+        (ewk_tile_unused_cache_tile_put):
+        * ewk/ewk_tiled_private.h:
+        * ewk/ewk_view.cpp:
+        (_Ewk_View_Private_Data):
+        (_ewk_view_core_frame_new):
+        (_ewk_view_priv_new):
+        (_ewk_view_priv_del):
+        (ewk_view_core_page_get):
+        (ewk_view_popup_new):
+        (ewk_view_popup_destroy):
+        (EWKPrivate::corePage):
+        * ewk/ewk_window_features.cpp:
+        (ewk_window_features_unref):
+        (ewk_window_features_new_from_core):
+
 2012-02-27  JungJik Lee  <jungjik....@samsung.com>
 
         [EFL] Pairing up between evas_object_image_data_get and evas_object_image_data_set.

Modified: trunk/Source/WebKit/efl/ewk/ewk_auth_soup.cpp (109204 => 109205)


--- trunk/Source/WebKit/efl/ewk/ewk_auth_soup.cpp	2012-02-29 08:29:38 UTC (rev 109204)
+++ trunk/Source/WebKit/efl/ewk/ewk_auth_soup.cpp	2012-02-29 08:58:22 UTC (rev 109205)
@@ -93,19 +93,13 @@
     if (!ewk_auth_show_dialog_callback)
         return;
 
-    authenticationData = static_cast<Ewk_Auth_Data*>(calloc(1, sizeof(Ewk_Auth_Data)));
-
-    if (!authenticationData) {
-        CRITICAL("could not allocate Ewk_Auth_Data");
-        return;
-    }
-
     soup_session_pause_message(session, message);
     // We need to make sure the message sticks around when pausing it.
     g_object_ref(message);
     g_object_ref(session);
     g_object_ref(auth);
 
+    authenticationData = new Ewk_Auth_Data;
     authenticationData->message = message;
     authenticationData->auth = auth;
     authenticationData->session = session;
@@ -122,7 +116,7 @@
     g_object_unref(authData->message);
     g_object_unref(authData->session);
     g_object_unref(authData->auth);
-    free(authData);
+    delete authData;
 }
 
 static void attach(SoupSessionFeature* manager, SoupSession* session)

Modified: trunk/Source/WebKit/efl/ewk/ewk_contextmenu.cpp (109204 => 109205)


--- trunk/Source/WebKit/efl/ewk/ewk_contextmenu.cpp	2012-02-29 08:29:38 UTC (rev 109204)
+++ trunk/Source/WebKit/efl/ewk/ewk_contextmenu.cpp	2012-02-29 08:58:22 UTC (rev 109205)
@@ -75,7 +75,7 @@
     EINA_LIST_FREE(menu->items, item)
         ewk_context_menu_item_free(static_cast<Ewk_Context_Menu_Item*>(item));
 
-    free(menu);
+    delete menu;
 }
 
 Eina_Bool ewk_context_menu_destroy(Ewk_Context_Menu* menu)
@@ -101,10 +101,7 @@
                                                  Ewk_Context_Menu_Action action, Ewk_Context_Menu* submenu,
                                                  const char* title, Eina_Bool checked, Eina_Bool enabled)
 {
-    Ewk_Context_Menu_Item* item = static_cast<Ewk_Context_Menu_Item*>(malloc(sizeof(*item)));
-    if (!item)
-        return 0;
-
+    Ewk_Context_Menu_Item* item = new Ewk_Context_Menu_Item;
     item->type = type;
     item->action = ""
     item->title = eina_stringshare_add(title);
@@ -137,7 +134,7 @@
     EINA_SAFETY_ON_NULL_RETURN(item);
 
     eina_stringshare_del(item->title);
-    free(item);
+    delete item;
 }
 
 Ewk_Context_Menu_Item_Type ewk_context_menu_item_type_get(const Ewk_Context_Menu_Item* item)
@@ -226,11 +223,7 @@
     EINA_SAFETY_ON_NULL_RETURN_VAL(view, 0);
     EINA_SAFETY_ON_NULL_RETURN_VAL(controller, 0);
 
-    menu = static_cast<Ewk_Context_Menu*>(malloc(sizeof(*menu)));
-    if (!menu) {
-        CRITICAL("Could not allocate context menu memory.");
-        return 0;
-    }
+    menu = new Ewk_Context_Menu;
 
     menu->__ref = 1;
     menu->view = view;

Modified: trunk/Source/WebKit/efl/ewk/ewk_cookies.cpp (109204 => 109205)


--- trunk/Source/WebKit/efl/ewk/ewk_cookies.cpp	2012-02-29 08:29:38 UTC (rev 109204)
+++ trunk/Source/WebKit/efl/ewk/ewk_cookies.cpp	2012-02-29 08:58:22 UTC (rev 109205)
@@ -76,7 +76,7 @@
     list = soup_cookie_jar_all_cookies(cookieJar);
     for (p = list; p; p = p->next) {
         SoupCookie* cookie = static_cast<SoupCookie*>(p->data);
-        Ewk_Cookie* ewkCookie = static_cast<Ewk_Cookie*>(malloc(sizeof(*ewkCookie)));
+        Ewk_Cookie* ewkCookie = new Ewk_Cookie;
         ewkCookie->name = strdup(cookie->name);
         ewkCookie->value = strdup(cookie->value);
         ewkCookie->domain = strdup(cookie->domain);
@@ -121,7 +121,7 @@
     free(cookie->value);
     free(cookie->domain);
     free(cookie->path);
-    free(cookie);
+    delete cookie;
 }
 
 void ewk_cookies_policy_set(Ewk_Cookie_Policy cookiePolicy)

Modified: trunk/Source/WebKit/efl/ewk/ewk_frame.cpp (109204 => 109205)


--- trunk/Source/WebKit/efl/ewk/ewk_frame.cpp	2012-02-29 08:29:38 UTC (rev 109204)
+++ trunk/Source/WebKit/efl/ewk/ewk_frame.cpp	2012-02-29 08:58:22 UTC (rev 109205)
@@ -659,7 +659,7 @@
     eina_stringshare_del(hitTest->link.title);
     eina_stringshare_del(hitTest->image_uri);
     eina_stringshare_del(hitTest->media_uri);
-    free(hitTest);
+    delete hitTest;
 }
 
 Ewk_Hit_Test* ewk_frame_hit_test_new(const Evas_Object* ewkFrame, int x, int y)
@@ -680,12 +680,7 @@
     if (!result.innerNode())
         return 0;
 
-    Ewk_Hit_Test* hitTest = static_cast<Ewk_Hit_Test*>(calloc(1, sizeof(Ewk_Hit_Test)));
-    if (!hitTest) {
-        CRITICAL("Could not allocate memory for hit test.");
-        return 0;
-    }
-
+    Ewk_Hit_Test* hitTest = new Ewk_Hit_Test;
     hitTest->x = result.point().x();
     hitTest->y = result.point().y();
 #if 0

Modified: trunk/Source/WebKit/efl/ewk/ewk_history.cpp (109204 => 109205)


--- trunk/Source/WebKit/efl/ewk/ewk_history.cpp	2012-02-29 08:29:38 UTC (rev 109204)
+++ trunk/Source/WebKit/efl/ewk/ewk_history.cpp	2012-02-29 08:58:22 UTC (rev 109205)
@@ -241,13 +241,10 @@
         return 0;
     }
 
-    item = (Ewk_History_Item*)calloc(1, sizeof(Ewk_History_Item));
-    if (!item) {
-        CRITICAL("Could not allocate item memory.");
-        return 0;
-    }
-
     core->ref();
+
+    item = new Ewk_History_Item;
+    memset(item, 0, sizeof(*item));
     item->core = core;
 
     return item;
@@ -265,7 +262,7 @@
 static inline void _ewk_history_item_free(Ewk_History_Item* item, WebCore::HistoryItem* core)
 {
     core->deref();
-    free(item);
+    delete item;
 }
 
 void ewk_history_item_free(Ewk_History_Item* item)
@@ -399,14 +396,9 @@
     EINA_SAFETY_ON_NULL_RETURN_VAL(core, 0);
     DBG("core=%p", core);
 
-    history = static_cast<Ewk_History*>(malloc(sizeof(Ewk_History)));
-    if (!history) {
-        CRITICAL("Could not allocate history memory.");
-        return 0;
-    }
-
-    core->ref();
+    history = new Ewk_History;
     history->core = core;
+    core->ref();
 
     return history;
 }
@@ -423,7 +415,7 @@
 {
     DBG("history=%p", history);
     history->core->deref();
-    free(history);
+    delete history;
 }
 
 namespace EWKPrivate {

Modified: trunk/Source/WebKit/efl/ewk/ewk_tiled_backing_store.cpp (109204 => 109205)


--- trunk/Source/WebKit/efl/ewk/ewk_tiled_backing_store.cpp	2012-02-29 08:29:38 UTC (rev 109204)
+++ trunk/Source/WebKit/efl/ewk/ewk_tiled_backing_store.cpp	2012-02-29 08:58:22 UTC (rev 109205)
@@ -26,6 +26,8 @@
 #include "ewk_tiled_private.h"
 #include <Ecore.h>
 #include <Eina.h>
+#include <OwnPtr.h>
+#include <PassOwnPtr.h>
 #include <algorithm>
 #include <errno.h>
 #include <math.h>
@@ -249,12 +251,8 @@
 
 static inline Eina_Bool _ewk_tiled_backing_store_pre_render_request_add(Ewk_Tiled_Backing_Store_Data* priv, unsigned long column, unsigned long row, float zoom)
 {
-    Ewk_Tiled_Backing_Store_Pre_Render_Request* request;
+    Ewk_Tiled_Backing_Store_Pre_Render_Request* request = new Ewk_Tiled_Backing_Store_Pre_Render_Request;
 
-    request = static_cast<Ewk_Tiled_Backing_Store_Pre_Render_Request*>(malloc(sizeof(*request)));
-    if (!request)
-        return false;
-
     priv->render.preRenderRequests = eina_inlist_append
                                            (priv->render.preRenderRequests, EINA_INLIST_GET(request));
 
@@ -269,7 +267,7 @@
 {
     priv->render.preRenderRequests = eina_inlist_remove
                                            (priv->render.preRenderRequests, EINA_INLIST_GET(request));
-    free(request);
+    delete request;
 }
 
 static inline Ewk_Tiled_Backing_Store_Pre_Render_Request* _ewk_tiled_backing_store_pre_render_request_first(const Ewk_Tiled_Backing_Store_Data* priv)
@@ -286,7 +284,7 @@
         Ewk_Tiled_Backing_Store_Pre_Render_Request* request;
         request = _ewk_tiled_backing_store_pre_render_request_first(priv);
         *preRenderList = eina_inlist_remove(*preRenderList, *preRenderList);
-        free(request);
+        delete request;
     }
 }
 
@@ -301,7 +299,7 @@
         next = iter->next;
         *preRenderList = eina_inlist_remove(*preRenderList, iter);
         iter = next;
-        free(request);
+        delete request;
     }
 }
 
@@ -471,31 +469,25 @@
 
 static Ewk_Tiled_Backing_Store_Item* _ewk_tiled_backing_store_item_add(Ewk_Tiled_Backing_Store_Data* priv, unsigned long column, unsigned long row)
 {
-    Ewk_Tiled_Backing_Store_Item* item;
     Evas_Coord x, y, tileWidth, tileHeight;
 
     DBG("ewkBackingStore=%p", priv->self);
 
-    item = static_cast<Ewk_Tiled_Backing_Store_Item*>(malloc(sizeof(*item)));
-    if (!item)
-        return 0;
-
     tileWidth = priv->view.tile.width;
     tileHeight = priv->view.tile.height;
     x = priv->view.offset.base.x + priv->view.x + tileWidth * column;
     y = priv->view.offset.base.y + priv->view.y + tileHeight * row;
 
+    OwnPtr<Ewk_Tiled_Backing_Store_Item> item = adoptPtr(new Ewk_Tiled_Backing_Store_Item);
     item->tile = 0;
-
     item->smoothScale = priv->view.tile.zoomWeakSmoothScale;
-    _ewk_tiled_backing_store_item_move(item, x, y);
-    _ewk_tiled_backing_store_item_resize(item, tileWidth, tileHeight);
-    if (!_ewk_tiled_backing_store_item_fill(priv, item, column, row)) {
-        free(item);
+
+    _ewk_tiled_backing_store_item_move(item.get(), x, y);
+    _ewk_tiled_backing_store_item_resize(item.get(), tileWidth, tileHeight);
+    if (!_ewk_tiled_backing_store_item_fill(priv, item.get(), column, row))
         return 0;
-    }
 
-    return item;
+    return item.leakPtr();
 }
 
 static void _ewk_tiled_backing_store_item_del(Ewk_Tiled_Backing_Store_Data* priv, Ewk_Tiled_Backing_Store_Item* item)
@@ -505,7 +497,7 @@
         _ewk_tiled_backing_store_tile_dissociate(priv, item, last_used);
     }
 
-    free(item);
+    delete item;
 }
 
 static void _ewk_tiled_backing_store_item_smooth_scale_set(Ewk_Tiled_Backing_Store_Item* item, Eina_Bool smoothScale)

Modified: trunk/Source/WebKit/efl/ewk/ewk_tiled_matrix.cpp (109204 => 109205)


--- trunk/Source/WebKit/efl/ewk/ewk_tiled_matrix.cpp	2012-02-29 08:29:38 UTC (rev 109204)
+++ trunk/Source/WebKit/efl/ewk/ewk_tiled_matrix.cpp	2012-02-29 08:58:22 UTC (rev 109205)
@@ -25,6 +25,8 @@
 #include "ewk_tiled_backing_store.h"
 #include "ewk_tiled_private.h"
 #include <Eina.h>
+#include <OwnPtr.h>
+#include <PassOwnPtr.h>
 #include <errno.h>
 #include <inttypes.h>
 #include <math.h>
@@ -170,7 +172,7 @@
     if (!entry->count && entry->matrix != tileMatrix->matrix) {
         eina_matrixsparse_free(entry->matrix);
         tileMatrix->matrices = eina_inlist_remove(tileMatrix->matrices, EINA_INLIST_GET(entry));
-        free(entry);
+        delete entry;
     }
 
     ewk_tile_free(tile);
@@ -197,18 +199,16 @@
  */
 Ewk_Tile_Matrix* ewk_tile_matrix_new(Ewk_Tile_Unused_Cache* tileUnusedCache, unsigned long columns, unsigned long rows, float zoomLevel, Evas_Colorspace colorSpace, void (*renderCallback)(void* data, Ewk_Tile* tile, const Eina_Rectangle* update), const void* renderData)
 {
-    Ewk_Tile_Matrix* tileMatrix = static_cast<Ewk_Tile_Matrix*>(calloc(1, sizeof(Ewk_Tile_Matrix)));
-    if (!tileMatrix)
-        return 0;
+    OwnPtr<Ewk_Tile_Matrix> tileMatrix = adoptPtr(new Ewk_Tile_Matrix);
 
-    tileMatrix->matrix = eina_matrixsparse_new(rows, columns, _ewk_tile_matrix_cell_free, tileMatrix);
+    tileMatrix->matrix = eina_matrixsparse_new(rows, columns, _ewk_tile_matrix_cell_free, tileMatrix.get());
     if (!tileMatrix->matrix) {
         ERR("could not create sparse matrix.");
-        free(tileMatrix);
         return 0;
     }
 
-    ewk_tile_matrix_zoom_level_set(tileMatrix, zoomLevel);
+    tileMatrix->matrices = 0;
+    ewk_tile_matrix_zoom_level_set(tileMatrix.get(), zoomLevel);
 
     if (tileUnusedCache)
         tileMatrix->tileUnusedCache = ewk_tile_unused_cache_ref(tileUnusedCache);
@@ -217,7 +217,6 @@
         if (!tileMatrix->tileUnusedCache) {
             ERR("no cache of unused tile!");
             eina_matrixsparse_free(tileMatrix->matrix);
-            free(tileMatrix);
             return 0;
         }
     }
@@ -227,8 +226,16 @@
     tileMatrix->render.data = ""
     tileMatrix->tile.width = defaultTileWidth;
     tileMatrix->tile.height = defaultTileHeigth;
+    tileMatrix->frozen = 0;
+    tileMatrix->updates = 0;
 
-    return tileMatrix;
+#ifdef DEBUG_MEM_LEAKS
+    tileMatrix->stats.tiles.allocated = 0;
+    tileMatrix->stats.tiles.freed = 0;
+    tileMatrix->stats.bytes.allocated = 0;
+    tileMatrix->stats.bytes.freed = 0;
+#endif
+    return tileMatrix.leakPtr();
 }
 
 void ewk_tile_matrix_zoom_level_set(Ewk_Tile_Matrix* tileMatrix, float zoom)
@@ -249,12 +256,14 @@
     }
 
     if (!entry) {
-        entry = static_cast<Ewk_Tile_Matrix_Entry*>(calloc(1, sizeof(Ewk_Tile_Matrix_Entry)));
+        entry = new Ewk_Tile_Matrix_Entry;
+        memset(entry, 0, sizeof(Ewk_Tile_Matrix_Entry));
+        entry->matrix = eina_matrixsparse_new(rows, columns, _ewk_tile_matrix_cell_free, tileMatrix);
+        entry->count = 0;
         entry->zoom = zoom;
-        entry->matrix = eina_matrixsparse_new(rows, columns, _ewk_tile_matrix_cell_free, tileMatrix);
         if (!entry->matrix) {
             ERR("could not create sparse matrix.");
-            free(entry);
+            delete entry;
             return;
         }
         tileMatrix->matrices = eina_inlist_prepend(tileMatrix->matrices, EINA_INLIST_GET(entry));
@@ -277,7 +286,7 @@
         if (iterator->matrix != tileMatrix->matrix) {
             eina_matrixsparse_free(iterator->matrix);
             tileMatrix->matrices = eina_inlist_remove(tileMatrix->matrices, matrixList);
-            free(iterator);
+            delete iterator;
         }
 
         matrixList = next;
@@ -303,8 +312,8 @@
     entry = EINA_INLIST_CONTAINER_GET(tileMatrix->matrices, Ewk_Tile_Matrix_Entry);
     eina_matrixsparse_free(entry->matrix);
     tileMatrix->matrices = eina_inlist_remove(tileMatrix->matrices, reinterpret_cast<Eina_Inlist*>(entry));
-    free(entry);
     tileMatrix->matrices = 0;
+    delete entry;
 
     ewk_tile_unused_cache_thaw(tileMatrix->tileUnusedCache);
     ewk_tile_unused_cache_unref(tileMatrix->tileUnusedCache);
@@ -335,7 +344,7 @@
             tileMatrix->stats.bytes.allocated, tileMatrix->stats.bytes.freed);
 #endif
 
-    free(tileMatrix);
+    delete tileMatrix;
 }
 
 /**

Modified: trunk/Source/WebKit/efl/ewk/ewk_tiled_model.cpp (109204 => 109205)


--- trunk/Source/WebKit/efl/ewk/ewk_tiled_model.cpp	2012-02-29 08:29:38 UTC (rev 109204)
+++ trunk/Source/WebKit/efl/ewk/ewk_tiled_model.cpp	2012-02-29 08:58:22 UTC (rev 109205)
@@ -439,9 +439,8 @@
 {
     Ewk_Tile_Unused_Cache* tileUnusedCache;
 
-    tileUnusedCache = static_cast<Ewk_Tile_Unused_Cache*>(calloc(1, sizeof(Ewk_Tile_Unused_Cache)));
-    if (!tileUnusedCache)
-        return 0;
+    tileUnusedCache = new Ewk_Tile_Unused_Cache;
+    memset(tileUnusedCache, 0, sizeof(Ewk_Tile_Unused_Cache));
 
     DBG("tileUnusedCache=%p", tileUnusedCache);
     tileUnusedCache->memory.max = max;
@@ -491,7 +490,7 @@
         tileUnusedCache->memory.max, tileUnusedCache->memory.used);
 
     ewk_tile_unused_cache_clear(tileUnusedCache);
-    free(tileUnusedCache);
+    delete tileUnusedCache;
 }
 
 /**
@@ -511,7 +510,7 @@
     EINA_LIST_FREE(tileUnusedCache->entries.list, item) {
         Ewk_Tile_Unused_Cache_Entry* itr = static_cast<Ewk_Tile_Unused_Cache_Entry*>(item);
         itr->tile_free.callback(itr->tile_free.data, itr->tile);
-        free(itr);
+        delete itr;
     }
 
     tileUnusedCache->memory.used = 0;
@@ -604,7 +603,7 @@
         done += ewk_tile_memory_size_get(itr->tile);
         itr->tile_free.callback(itr->tile_free.data, itr->tile);
         tileUnusedCache->entries.list = eina_list_remove_list(tileUnusedCache->entries.list, list);
-        free(itr);
+        delete itr;
         count++;
     }
 
@@ -669,28 +668,23 @@
  */
 Eina_Bool ewk_tile_unused_cache_tile_get(Ewk_Tile_Unused_Cache* tileUnusedCache, Ewk_Tile* tile)
 {
-    Eina_List* foundEntry, *iterateEntry;
-
+    Eina_List* iterateEntry;
     void* item;
-    foundEntry = 0;
+
     EINA_LIST_FOREACH(tileUnusedCache->entries.list, iterateEntry, item) {
         Ewk_Tile_Unused_Cache_Entry* entry = static_cast<Ewk_Tile_Unused_Cache_Entry*>(item);
         if (entry->tile == tile) {
-            foundEntry = iterateEntry;
-            break;
+            tileUnusedCache->entries.count--;
+            tileUnusedCache->memory.used -= ewk_tile_memory_size_get(tile);
+            tileUnusedCache->entries.list = eina_list_remove_list(tileUnusedCache->entries.list, iterateEntry);
+            delete entry;
+
+            return true;
         }
     }
-    if (!foundEntry) {
-        ERR("tile %p not found in cache %p", tile, tileUnusedCache);
-        return false;
-    }
 
-    tileUnusedCache->entries.count--;
-    tileUnusedCache->memory.used -= ewk_tile_memory_size_get(tile);
-    tileUnusedCache->entries.list = eina_list_remove_list(tileUnusedCache->entries.list, foundEntry);
-    free(item);
-
-    return true;
+    ERR("tile %p not found in cache %p", tile, tileUnusedCache);
+    return false;
 }
 
 /**
@@ -724,9 +718,7 @@
         return false;
     }
 
-    unusedCacheEntry = static_cast<Ewk_Tile_Unused_Cache_Entry*>(malloc(sizeof(Ewk_Tile_Unused_Cache_Entry)));
-    if (!unusedCacheEntry)
-        return false;
+    unusedCacheEntry = new Ewk_Tile_Unused_Cache_Entry;
 
     tileUnusedCache->entries.list = eina_list_append(tileUnusedCache->entries.list, unusedCacheEntry);
     if (eina_error_get()) {

Modified: trunk/Source/WebKit/efl/ewk/ewk_tiled_private.h (109204 => 109205)


--- trunk/Source/WebKit/efl/ewk/ewk_tiled_private.h	2012-02-29 08:29:38 UTC (rev 109204)
+++ trunk/Source/WebKit/efl/ewk/ewk_tiled_private.h	2012-02-29 08:58:22 UTC (rev 109205)
@@ -29,34 +29,4 @@
 #define WRN(...) EINA_LOG_DOM_WARN(_ewk_tiled_log_dom, __VA_ARGS__)
 #define INF(...) EINA_LOG_DOM_INFO(_ewk_tiled_log_dom, __VA_ARGS__)
 #define DBG(...) EINA_LOG_DOM_DBG(_ewk_tiled_log_dom, __VA_ARGS__)
-#define OOM(op, size) CRITICAL("could not %s %zd bytes: %s", op, size, strerror(errno))
-#define MALLOC_OR_OOM_RET(ptr, size, ...)       \
-    do {                                        \
-        ptr = malloc(size);                     \
-        if (!ptr && (size) > 0) {               \
-            OOM("malloc", (size));              \
-            return __VA_ARGS__;                 \
-        }                                       \
-    } while (0)
-
-#define CALLOC_OR_OOM_RET(ptr, size, ...)       \
-    do {                                        \
-        ptr = calloc(1, size);                  \
-        if (!ptr && (size) > 0) {               \
-            OOM("calloc", (size));              \
-            return __VA_ARGS__;                 \
-        }                                       \
-    } while (0)
-
-#define REALLOC_OR_OOM_RET(ptr, size, ...)      \
-    do {                                        \
-        void* __tmp_ptr;                        \
-        __tmp_ptr = realloc(ptr, size);         \
-        if (!__tmp_ptr && (size) > 0) {         \
-            OOM("realloc", (size));             \
-            return __VA_ARGS__;                 \
-        }                                       \
-        ptr = __tmp_ptr;                        \
-    } while (0)
-
 #endif // ewk_tiled_private_h

Modified: trunk/Source/WebKit/efl/ewk/ewk_view.cpp (109204 => 109205)


--- trunk/Source/WebKit/efl/ewk/ewk_view.cpp	2012-02-29 08:29:38 UTC (rev 109204)
+++ trunk/Source/WebKit/efl/ewk/ewk_view.cpp	2012-02-29 08:58:22 UTC (rev 109205)
@@ -133,7 +133,7 @@
  * @internal
  */
 struct _Ewk_View_Private_Data {
-    WebCore::Page* page;
+    OwnPtr<WebCore::Page> page;
     WebCore::Settings* pageSettings;
     WebCore::Frame* mainFrame;
     WebCore::ViewportArguments viewportArguments;
@@ -589,47 +589,36 @@
     }
     frameLoaderClient->setCustomUserAgent(String::fromUTF8(priv->settings.userAgent));
 
-    return WebCore::Frame::create(priv->page, owner, frameLoaderClient);
+    return WebCore::Frame::create(priv->page.get(), owner, frameLoaderClient);
 }
 
 static Evas_Smart_Class _parent_sc = EVAS_SMART_CLASS_INIT_NULL;
 
 static Ewk_View_Private_Data* _ewk_view_priv_new(Ewk_View_Smart_Data* smartData)
 {
-    Ewk_View_Private_Data* priv =
-        static_cast<Ewk_View_Private_Data*>(calloc(1, sizeof(Ewk_View_Private_Data)));
+    Ewk_View_Private_Data* priv = new Ewk_View_Private_Data;
+    memset(priv, 0, sizeof(Ewk_View_Private_Data));
     AtomicString string;
     WebCore::KURL url;
 
-    if (!priv) {
-        CRITICAL("could not allocate Ewk_View_Private_Data");
-        return 0;
-    }
-
     WebCore::Page::PageClients pageClients;
     pageClients.chromeClient = new WebCore::ChromeClientEfl(smartData->self);
     pageClients.editorClient = new WebCore::EditorClientEfl(smartData->self);
     pageClients.dragClient = new WebCore::DragClientEfl;
     pageClients.inspectorClient = new WebCore::InspectorClientEfl;
-    priv->page = new WebCore::Page(pageClients);
-    if (!priv->page) {
-        CRITICAL("Could not create WebKit Page");
-        goto error_page;
-    }
+
+    priv->page = adoptPtr(new WebCore::Page(pageClients));
+
 #if ENABLE(DEVICE_ORIENTATION)
-    WebCore::provideDeviceMotionTo(priv->page, new WebCore::DeviceMotionClientEfl);
-    WebCore::provideDeviceOrientationTo(priv->page, new WebCore::DeviceOrientationClientEfl);
+    WebCore::provideDeviceMotionTo(priv->page.get(), new WebCore::DeviceMotionClientEfl);
+    WebCore::provideDeviceOrientationTo(priv->page.get(), new WebCore::DeviceOrientationClientEfl);
 #endif
 
 #if ENABLE(VIBRATION)
-    WebCore::provideVibrationTo(priv->page, new WebCore::VibrationClientEfl(smartData->self));
+    WebCore::provideVibrationTo(priv->page.get(), new WebCore::VibrationClientEfl(smartData->self));
 #endif
 
     priv->pageSettings = priv->page->settings();
-    if (!priv->pageSettings) {
-        CRITICAL("Could not get page settings.");
-        goto error_settings;
-    }
 
     priv->viewportArguments.width = WebCore::ViewportArguments::ValueAuto;
     priv->viewportArguments.height = WebCore::ViewportArguments::ValueAuto;
@@ -714,29 +703,12 @@
     priv->settings.domTimerInterval = priv->pageSettings->defaultMinDOMTimerInterval();
 
     priv->mainFrame = _ewk_view_core_frame_new(smartData, priv, 0).get();
-    if (!priv->mainFrame) {
-        CRITICAL("Could not create main frame.");
-        goto error_main_frame;
-    }
 
     priv->history = ewk_history_new(static_cast<WebCore::BackForwardListImpl*>(priv->page->backForwardList()));
-    if (!priv->history) {
-        CRITICAL("Could not create history instance for view.");
-        goto error_history;
-    }
 
     priv->soupSession = WebCore::ResourceHandle::defaultSession();
 
     return priv;
-
-error_history:
-    // delete priv->main_frame; /* do not delete priv->main_frame */
-error_main_frame:
-error_settings:
-    delete priv->page;
-error_page:
-    free(priv);
-    return 0;
 }
 
 static void _ewk_view_priv_del(Ewk_View_Private_Data* priv)
@@ -766,8 +738,7 @@
 
     ewk_history_free(priv->history);
 
-    delete priv->page;
-    free(priv);
+    delete priv;
 }
 
 static void _ewk_view_smart_add(Evas_Object* ewkView)
@@ -3395,7 +3366,7 @@
 {
     EWK_VIEW_SD_GET_OR_RETURN(ewkView, smartData, 0);
     EWK_VIEW_PRIV_GET_OR_RETURN(smartData, priv, 0);
-    return priv->page;
+    return priv->page.get();
 }
 
 /**
@@ -3474,7 +3445,7 @@
     // populate items
     const int size = client->listSize();
     for (int i = 0; i < size; ++i) {
-        Ewk_Menu_Item* item = static_cast<Ewk_Menu_Item*>(malloc(sizeof(*item)));
+        Ewk_Menu_Item* item = new Ewk_Menu_Item;
         if (client->itemIsSeparator(i))
             item->type = EWK_MENU_SEPARATOR;
         else if (client->itemIsLabel(i))
@@ -3508,7 +3479,7 @@
     EINA_LIST_FREE(priv->popup.menu.items, itemv) {
         Ewk_Menu_Item* item = static_cast<Ewk_Menu_Item*>(itemv);
         eina_stringshare_del(item->text);
-        free(item);
+        delete item;
     }
     priv->popup.menuClient->popupDidHide();
     priv->popup.menuClient = 0;
@@ -3951,7 +3922,7 @@
 {
     EWK_VIEW_SD_GET_OR_RETURN(ewkView, smartData, 0);
     EWK_VIEW_PRIV_GET_OR_RETURN(smartData, priv, 0);
-    return priv->page;
+    return priv->page.get();
 }
 
 } // namespace EWKPrivate

Modified: trunk/Source/WebKit/efl/ewk/ewk_window_features.cpp (109204 => 109205)


--- trunk/Source/WebKit/efl/ewk/ewk_window_features.cpp	2012-02-29 08:29:38 UTC (rev 109204)
+++ trunk/Source/WebKit/efl/ewk/ewk_window_features.cpp	2012-02-29 08:58:22 UTC (rev 109205)
@@ -45,7 +45,7 @@
 
     delete windowFeatures->core;
     windowFeatures->core = 0;
-    free(windowFeatures);
+    delete windowFeatures;
 }
 
 void ewk_window_features_ref(Ewk_Window_Features* windowFeatures)
@@ -109,11 +109,7 @@
  */
 Ewk_Window_Features* ewk_window_features_new_from_core(const WebCore::WindowFeatures* core)
 {
-    Ewk_Window_Features* window_features = static_cast<Ewk_Window_Features*>(malloc(sizeof(*window_features)));
-    if (!window_features) {
-        CRITICAL("Could not allocate Ewk_Window_Features.");
-        return 0;
-    }
+    Ewk_Window_Features* window_features = new Ewk_Window_Features;
 
     if (core)
         window_features->core = new WebCore::WindowFeatures(*core);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to