diff --git a/src/lxterminal.c b/src/lxterminal.c
index 015f5e4..32e3b68 100644
--- a/src/lxterminal.c
+++ b/src/lxterminal.c
@@ -1210,6 +1210,8 @@ static Term * terminal_new(LXTerminal * terminal, const gchar * label, const gch
     vte_terminal_match_set_cursor_type(VTE_TERMINAL(term->vte), ret, GDK_HAND2);
     ret = vte_terminal_match_add_regex(VTE_TERMINAL(term->vte), dingus2, 0);
     vte_terminal_match_set_cursor_type(VTE_TERMINAL(term->vte), ret, GDK_HAND2);
+    vte_regex_unref(dingus1);
+    vte_regex_unref(dingus2);
 #else
     GRegex * dingus1 = g_regex_new(DINGUS1, G_REGEX_OPTIMIZE, 0, NULL);
     GRegex * dingus2 = g_regex_new(DINGUS2, G_REGEX_OPTIMIZE, 0, NULL);
@@ -1217,9 +1219,9 @@ static Term * terminal_new(LXTerminal * terminal, const gchar * label, const gch
     vte_terminal_match_set_cursor_type(VTE_TERMINAL(term->vte), ret, GDK_HAND2);
     ret = vte_terminal_match_add_gregex(VTE_TERMINAL(term->vte), dingus2, 0);
     vte_terminal_match_set_cursor_type(VTE_TERMINAL(term->vte), ret, GDK_HAND2);
-#endif
     g_regex_unref(dingus1);
     g_regex_unref(dingus2);
+#endif
 
     /* Create a horizontal box inside an event box as the toplevel for the tab label. */
     term->tab = gtk_event_box_new();
