diff --git a/pd/src/g_canvas.c b/pd/src/g_canvas.c
index d7e6505d00fdbf0483235d7e9297c8a41893882f..5318a21e9811ac08670b562eeb54b5f62fcfad1c 100644
--- a/pd/src/g_canvas.c
+++ b/pd/src/g_canvas.c
@@ -696,6 +696,8 @@ void canvas_draw_gop_resize_hooks(t_canvas* x)
 	t_scalehandle *sh = (t_scalehandle *)(x->x_handle);
 	t_scalehandle *mh = (t_scalehandle *)(x->x_mhandle);
 
+    if (!sh || !mh) return; //in case we are an array which does not initialize its hooks
+
 	if(x->gl_edit && glist_isvisible(x) && glist_istoplevel(x) && x->gl_goprect && !x->gl_editor->e_selection) {
 		
 		//Drawing and Binding Resize_Blob for GOP