aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--src/bookmarks/ephy-bookmarks.c20
2 files changed, 16 insertions, 10 deletions
diff --git a/ChangeLog b/ChangeLog
index 82f3cba4c..b5e7846bf 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2006-06-04 Christian Persch <chpe@cvs.gnome.org>
+
+ * src/bookmarks/ephy-bookmarks.c: (resolve_cb):
+
+ Don't crash on error from zeroconf bookmarks. Fixes bug #343922.
+
2006-06-05 Wouter Bolsterlee <uws+gnome@xs4all.nl>
* lib/widgets/ephy-location-entry.c: (keyword_match):
diff --git a/src/bookmarks/ephy-bookmarks.c b/src/bookmarks/ephy-bookmarks.c
index cebc802dc..6d141bcc8 100644
--- a/src/bookmarks/ephy-bookmarks.c
+++ b/src/bookmarks/ephy-bookmarks.c
@@ -842,16 +842,6 @@ resolve_cb (GnomeVFSDNSSDResolveHandle *handle,
gboolean was_immutable;
guint i;
- /* Find the protocol */
- for (i = 0; i < G_N_ELEMENTS (zeroconf_protos); ++i)
- {
- char proto[20];
-
- g_snprintf (proto, sizeof (proto), "_%s._tcp", zeroconf_protos[i]);
- if (strcmp (service->type, proto) == 0) break;
- }
- if (i == G_N_ELEMENTS (zeroconf_protos)) return;
-
was_immutable = ephy_node_db_is_immutable (priv->db);
ephy_node_db_set_immutable (priv->db, FALSE);
@@ -867,6 +857,16 @@ resolve_cb (GnomeVFSDNSSDResolveHandle *handle,
return;
}
+ /* Find the protocol */
+ for (i = 0; i < G_N_ELEMENTS (zeroconf_protos); ++i)
+ {
+ char proto[20];
+
+ g_snprintf (proto, sizeof (proto), "_%s._tcp", zeroconf_protos[i]);
+ if (strcmp (service->type, proto) == 0) break;
+ }
+ if (i == G_N_ELEMENTS (zeroconf_protos)) return;
+
if (text != NULL)
{
path = g_hash_table_lookup (text, "path");