diff --git a/src/Autocompletion.vala b/src/Autocompletion.vala index d5086b2..443c3e2 100644 --- a/src/Autocompletion.vala +++ b/src/Autocompletion.vala @@ -45,7 +45,7 @@ public class Autocompletion : Object { scrollable_list_view = new ScrollableListView( entries, typeof(AutocompletionEntry), typeof(AutocompletionEntryView), "entry"); - stage.add(scrollable_list_view); + stage.add_child(scrollable_list_view); scrollable_list_view.set_filter_function(filter_function); scrollable_list_view.set_sort_function(sort_function); diff --git a/src/Command.vala b/src/Command.vala index 2fcf14f..372d699 100644 --- a/src/Command.vala +++ b/src/Command.vala @@ -105,7 +105,12 @@ public class Command : Object { } // Remove remaining placeholders - substitute_parameter = placeholder_pattern.replace(substitute_parameter, -1, 0, ""); + // TODO: handle error properly + try { + substitute_parameter = placeholder_pattern.replace(substitute_parameter, -1, 0, ""); + } catch (RegexError e) { + stderr.printf("Error in removing remaining placeholders"); + } substitute_command.parameters.add(substitute_parameter); } diff --git a/src/NestingContainer.vala b/src/NestingContainer.vala index e20248d..3a418b6 100644 --- a/src/NestingContainer.vala +++ b/src/NestingContainer.vala @@ -387,6 +387,8 @@ public class NestingContainer : Gtk.Box, NestingContainerChild { Gtk.IconSize.MENU)); var css_provider = new Gtk.CssProvider(); + // TODO: handle error properly + try { css_provider.load_from_data( ".button {\n" + "-GtkButton-default-border: 0px;\n" + @@ -396,6 +398,9 @@ public class NestingContainer : Gtk.Box, NestingContainerChild { "-GtkWidget-focus-padding: 0px;\n" + "padding: 0px;\n" + "}", -1); + } catch (Error e) { + stderr.printf("Error in css_provider.load_from_data"); + } close_button.get_style_context().add_provider(css_provider, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION); diff --git a/src/Terminal.vala b/src/Terminal.vala index c9e1eb5..81a208f 100644 --- a/src/Terminal.vala +++ b/src/Terminal.vala @@ -227,7 +227,12 @@ public class Terminal : Object { var this_terminal = terminals_by_pid.get((int)child_pid); // Close channel to keep pending shell IO from triggering UI updates (and crashes) // after the corresponding TerminalWidget has been removed - this_terminal.command_channel.shutdown(false); + // TODO: handle error properly + try { + this_terminal.command_channel.shutdown(false); + } catch (IOChannelError e) { + stderr.printf("Error in command_channel.shutdown"); + } this_terminal.shell_terminated(); // TODO: If allowed to run, this loop turns into an infinite loop // when multiple terminals are used. INVESTIGATE FURTHER!