diff --git a/shell/e-shell-sidebar.c b/shell/e-shell-sidebar.c
index bfd2f76..618910a 100644
--- a/shell/e-shell-sidebar.c
+++ b/shell/e-shell-sidebar.c
@@ -302,7 +302,7 @@ shell_sidebar_forall (GtkContainer *container,
 
 	priv = E_SHELL_SIDEBAR_GET_PRIVATE (container);
 
-	if (include_internals)
+	if (include_internals && callback_data)
 		callback (priv->event_box, callback_data);
 
 	/* Chain up to parent's forall() method. */
diff --git a/shell/e-shell-switcher.c b/shell/e-shell-switcher.c
index f9270cf..33ccdd6 100644
--- a/shell/e-shell-switcher.c
+++ b/shell/e-shell-switcher.c
@@ -267,10 +267,10 @@ shell_switcher_get_preferred_width (GtkWidget *widget,
 		return;
 
 	for (iter = priv->proxies; iter != NULL; iter = iter->next) {
-		GtkWidget *widget = iter->data;
+		GtkWidget *widget_proxy = iter->data;
                 gint child_min, child_nat;
 
-		gtk_widget_get_preferred_width (widget, &child_min, &child_nat);
+		gtk_widget_get_preferred_width (widget_proxy, &child_min, &child_nat);
 
                 child_min += H_PADDING;
                 child_nat += H_PADDING;
diff --git a/widgets/table/e-tree.c b/widgets/table/e-tree.c
index 08e172c..abb641b 100644
--- a/widgets/table/e-tree.c
+++ b/widgets/table/e-tree.c
@@ -1998,6 +1998,8 @@ et_set_property (GObject *object,
 {
 	ETree *etree = E_TREE (object);
 
+	g_return_val_if_fail (etree->priv , NULL);
+
 	switch (prop_id) {
 	case PROP_LENGTH_THRESHOLD:
 		etree->priv->length_threshold = g_value_get_int (value);
