summaryrefslogtreecommitdiff
path: root/libreofficekit/source/gtk/tilebuffer.cxx
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.co.uk>2015-09-28 09:06:10 +0200
committerMiklos Vajna <vmiklos@collabora.co.uk>2015-09-28 09:26:39 +0200
commit0067b4df75cdbeb325024cd2b66e3d64fe8b3fcd (patch)
tree2c1b3bbcc3367eaec0c61ebab10303fa73f05b68 /libreofficekit/source/gtk/tilebuffer.cxx
parent6a9f985ea698355f38c1681c1eb276f8b9dd859c (diff)
libreofficekit: fix mismatched free() / delete
Change-Id: I60eb53d4bf9943fd52e0a9d8e3574a7d1cc027e0
Diffstat (limited to 'libreofficekit/source/gtk/tilebuffer.cxx')
-rw-r--r--libreofficekit/source/gtk/tilebuffer.cxx11
1 files changed, 8 insertions, 3 deletions
diff --git a/libreofficekit/source/gtk/tilebuffer.cxx b/libreofficekit/source/gtk/tilebuffer.cxx
index 75c3d0d2c5c4..091d33ae7978 100644
--- a/libreofficekit/source/gtk/tilebuffer.cxx
+++ b/libreofficekit/source/gtk/tilebuffer.cxx
@@ -67,7 +67,7 @@ void TileBuffer::setInvalid(int x, int y, float fZoom, GTask* task,
pLOEvent->m_nPaintTileX = x;
pLOEvent->m_nPaintTileY = y;
pLOEvent->m_fPaintTileZoom = fZoom;
- g_task_set_task_data(task, pLOEvent, g_free);
+ g_task_set_task_data(task, pLOEvent, LOEvent::destroy);
g_thread_pool_push(lokThreadPool, g_object_ref(task), NULL);
}
}
@@ -83,7 +83,7 @@ Tile& TileBuffer::getTile(int x, int y, float fZoom, GTask* task,
pLOEvent->m_nPaintTileX = x;
pLOEvent->m_nPaintTileY = y;
pLOEvent->m_fPaintTileZoom = fZoom;
- g_task_set_task_data(task, pLOEvent, g_free);
+ g_task_set_task_data(task, pLOEvent, LOEvent::destroy);
g_thread_pool_push(lokThreadPool, g_object_ref(task), NULL);
return m_mTiles[index];
}
@@ -93,7 +93,7 @@ Tile& TileBuffer::getTile(int x, int y, float fZoom, GTask* task,
pLOEvent->m_nPaintTileX = x;
pLOEvent->m_nPaintTileY = y;
pLOEvent->m_fPaintTileZoom = fZoom;
- g_task_set_task_data(task, pLOEvent, g_free);
+ g_task_set_task_data(task, pLOEvent, LOEvent::destroy);
g_thread_pool_push(lokThreadPool, g_object_ref(task), NULL);
return m_DummyTile;
}
@@ -101,5 +101,10 @@ Tile& TileBuffer::getTile(int x, int y, float fZoom, GTask* task,
return m_mTiles[index];
}
+void LOEvent::destroy(void* pMemory)
+{
+ LOEvent* pLOEvent = static_cast<LOEvent*>(pMemory);
+ delete pLOEvent;
+}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */