summaryrefslogtreecommitdiff
path: root/gsk/gskrendernode.c
diff options
context:
space:
mode:
authorРуслан Ижбулатов <lrn1986@gmail.com>2018-06-09 14:05:49 +0000
committerРуслан Ижбулатов <lrn1986@gmail.com>2018-06-09 14:05:49 +0000
commita394a86151fda092567ad9833720de1d9b56235b (patch)
tree7a1e1d4fa99a134f71ff7d13e3da4b0804270160 /gsk/gskrendernode.c
parent8e74eb382f0c617b7b65a6850952d6acc9fd3018 (diff)
downloadgtk+-a394a86151fda092567ad9833720de1d9b56235b.tar.gz
Use aligned allocators for GskRenderNode
Any data that is later fed to graphene must be allocated with proper alignment, if graphene uses SSE2 or GCC vector instructions.
Diffstat (limited to 'gsk/gskrendernode.c')
-rw-r--r--gsk/gskrendernode.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gsk/gskrendernode.c b/gsk/gskrendernode.c
index 343fd4b8ce..3b3c71a713 100644
--- a/gsk/gskrendernode.c
+++ b/gsk/gskrendernode.c
@@ -42,6 +42,7 @@
#include "gskdebugprivate.h"
#include "gskrendererprivate.h"
+#include "gskallocprivate.h"
#include <graphene-gobject.h>
@@ -66,7 +67,7 @@ gsk_render_node_finalize (GskRenderNode *self)
{
self->node_class->finalize (self);
- g_free (self);
+ gsk_aligned_free (self);
}
/*< private >
@@ -83,7 +84,7 @@ gsk_render_node_new (const GskRenderNodeClass *node_class, gsize extra_size)
g_return_val_if_fail (node_class != NULL, NULL);
g_return_val_if_fail (node_class->node_type != GSK_NOT_A_RENDER_NODE, NULL);
- self = g_malloc0 (node_class->struct_size + extra_size);
+ self = gsk_aligned_alloc0 (node_class->struct_size + extra_size, 1, 16);
self->node_class = node_class;