diff -ur tmp/sablotron-1.0/debian/changelog sablotron-1.0/debian/changelog
--- tmp/sablotron-1.0/debian/changelog	2005-06-01 14:11:32.000000000 +0200
+++ sablotron-1.0/debian/changelog	2005-06-01 19:49:17.000000000 +0200
@@ -1,3 +1,9 @@
+sablotron (1:1.0-1) unstable; urgency=low
+
+  * New epoch.
+
+ -- Adam Dickmeiss <adam@indexdata.dk>  Wed,  1 Jun 2005 15:59:47 +0200
+
 sablotron (1.0-1) unstable; urgency=low
 
   * New upstream release
diff -ur tmp/sablotron-1.0/src/engine/tree.cpp sablotron-1.0/src/engine/tree.cpp
--- tmp/sablotron-1.0/src/engine/tree.cpp	2003-07-16 16:53:17.000000000 +0200
+++ sablotron-1.0/src/engine/tree.cpp	2005-03-12 21:26:47.000000000 +0100
@@ -953,6 +953,8 @@
 	    if (!theSheet)
 		Warn1(S, W_NO_STYLESHEET, (char*)(a -> cont));
 	    dropCurrentElement(v);
+	    if (!theSheet)
+		break;
 	    
 	    OutputterObj source;
 	    //we start a subtree to record where the nodes come from
diff -ur tmp/sablotron-1.0/src/engine/uri.cpp sablotron-1.0/src/engine/uri.cpp
--- tmp/sablotron-1.0/src/engine/uri.cpp	2003-07-16 14:27:58.000000000 +0200
+++ sablotron-1.0/src/engine/uri.cpp	2005-06-01 22:16:56.366574104 +0200
@@ -268,7 +268,7 @@
 
 
 URIScheme makeAbsoluteURI2(Sit S, const char* uri,
-			   const char* base, Str& absolute, Str& scheme)
+			   const char* base, Str& absolute)
 {
     FiveStr 
         u_parts, 
@@ -276,6 +276,7 @@
     Bool 
         u_defined[5],
         u_any = FALSE;
+    Str scheme;
 
     // first, break up the URIs into their 5 components
     splitURI(uri, u_parts);
@@ -304,16 +305,27 @@
                 // query and fragment stay as they are in 'uri'
             }
         }
-        else    // scheme defined, check for paths not starting with '/'
+        else
         {
+	    scheme = u_parts[U_SCHEME];
+
+	    URIScheme uri_scheme = schemeToURI_(S, scheme);
+	    if (uri_scheme == URI_EXTENSION)
+	    {
+		absolute = uri;
+		return URI_EXTENSION;
+	    }
+	    // scheme defined, check for paths not starting with '/'
             if (!u_defined[U_AUTH] && !isSlash(u_parts[U_PATH][0]))
                 u_parts[U_PATH] = Str("/") + u_parts[U_PATH];
         }
     }
     DStr joined = absolute;
     joinURI(joined, u_parts, FALSE);         // join all components into a URI for return (no scheme)
-    absolute = joined;
-    return schemeToURI_(S, scheme = u_parts[U_SCHEME]);
+
+    scheme = u_parts[U_SCHEME];
+    absolute = (scheme + ":") + joined;
+    return schemeToURI_(S, scheme);
 }
 
 
@@ -322,14 +334,11 @@
 //    Merges a (possibly relative) URI reference with a base URI, setting
 //    'absolute' to the result. 
 //
+
 URIScheme makeAbsoluteURI(Sit S, const char* uri,
 			  const char* base, Str& absolute)
 {
-  Str scheme;
-  URIScheme temp;
-  temp = makeAbsoluteURI2(S, uri, base, absolute, scheme);
-  absolute = (scheme + ":") + absolute;
-  return temp;
+  return makeAbsoluteURI2(S, uri, base, absolute);
 }
 
 
