diff --git a/gobject/gsignal.c b/gobject/gsignal.c
index 9004ee8..5122ea6 100644
--- a/gobject/gsignal.c
+++ b/gobject/gsignal.c
@@ -2938,7 +2938,7 @@ g_signal_emit_valist (gpointer instance,
 
   n_params = node->n_params;
   signal_return_type = node->return_type;
-  instance_and_params = g_slice_alloc (sizeof (GValue) * (n_params + 1));
+  instance_and_params = g_slice_alloc0 (sizeof (GValue) * (n_params + 1));
   param_values = instance_and_params + 1;
 
   for (i = 0; i < node->n_params; i++)
