Merge from trunk.
[bpt/emacs.git] / src / xml.c
index 6d212b4..55352ba 100644 (file)
--- a/src/xml.c
+++ b/src/xml.c
@@ -87,7 +87,6 @@ static Lisp_Object
 parse_region (Lisp_Object start, Lisp_Object end, Lisp_Object base_url, int htmlp)
 {
   xmlDoc *doc;
-  xmlNode *node;
   Lisp_Object result = Qnil;
   const char *burl = "";
   EMACS_INT bytes;
@@ -129,16 +128,17 @@ parse_region (Lisp_Object start, Lisp_Object end, Lisp_Object base_url, int html
       Lisp_Object r = Qnil;
 
       while (n) {
-       if (r != Qnil)
+       if (!NILP (r))
          result = Fcons (r, result);
        r = make_dom (n);
        n = n->next;
       }
 
-      if (result == Qnil)
+      if (NILP (result))
        result = r;
       else
-       result = Fnreverse (Fcons (r, result));
+       result = Fcons (intern ("top"),
+                       Fcons (Qnil, Fnreverse (Fcons (r, result))));
 
       xmlFreeDoc (doc);
       xmlCleanupParser ();