--- a/em-format/em-format.c	2013-07-23 17:53:50.205407756 +0200
+++ b/em-format/em-format.c	2013-07-24 01:25:14.200920587 +0200
@@ -679,11 +679,18 @@
 
 	node = g_node_new (g_queue_new ());
 
-	if (emf->pending_uri_tree == NULL)
+	/* create root node */
+	if (emf->pending_uri_tree == NULL) {
 		emf->pending_uri_tree = node;
-	else
-		g_node_append (emf->pending_uri_tree, node);
+		emf->pending_uri_level = node;
+		return;
+	}
+	
+	/* multiple nodes not supported */
+	if (emf->pending_uri_level == NULL)
+		g_error("Only one root node allowed in PURI tree");
 
+	g_node_append (emf->pending_uri_level, node);
 	emf->pending_uri_level = node;
 }
 
