--- a/src/g_canvas.c
+++ b/src/g_canvas.c
@@ -103,6 +103,13 @@
 {
     canvas_newfilename = filesym;
     canvas_newdirectory = dirsym;
+}
+
+void glob_menunew(void *dummy, t_symbol *filesym, t_symbol *dirsym)
+{
+    glob_setfilename(dummy, filesym, dirsym);
+    canvas_new(0, 0, 0, 0);
+    canvas_pop((t_canvas *)s__X.s_thing, 1);
 }
 
 t_canvas *canvas_getcurrent(void)