diff --git a/ChangeLog b/ChangeLog
index 33b9ae76d9942c557c62327b53c2769d65f8cac7_Q2hhbmdlTG9n..082e081748d5ae66158d082b99f57358556f23ee_Q2hhbmdlTG9n 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Tue Nov  4 14:04:58 CET 2003 Daniel Veillard <daniel@veillard.com>
+
+	* libxslt/preproc.c: fixing the Document element precompilation
+	  to avoid the problem raised in #125614
+
 Tue Nov  4 01:08:17 PST 2003 William Brack <wbrack@mmm.com.hk>
 
 	* tests/multiple/out/letter*.orig: updated to reflect change
diff --git a/libxslt/preproc.c b/libxslt/preproc.c
index 33b9ae76d9942c557c62327b53c2769d65f8cac7_bGlieHNsdC9wcmVwcm9jLmM=..082e081748d5ae66158d082b99f57358556f23ee_bGlieHNsdC9wcmVwcm9jLmM= 100644
--- a/libxslt/preproc.c
+++ b/libxslt/preproc.c
@@ -204,7 +204,6 @@
 		 xsltTransformFunction function ATTRIBUTE_UNUSED) {
     xsltStylePreCompPtr comp;
     xmlChar *filename = NULL;
-    xmlChar *base = NULL;
     xmlChar *URL = NULL;
 
     comp = xsltNewStylePreComp(style, XSLT_FUNC_DOCUMENT);
@@ -253,21 +252,9 @@
     }
 
     if (filename != NULL) {
-	/*
-	 * Compute output URL
-	 */
-	base = xmlNodeGetBase(inst->doc, inst);
-	URL = xmlBuildURI(filename, base);
-	if (URL == NULL) {
-	    xsltTransformError(NULL, style, inst,
-		"xsltDocumentComp: URL computation failed %s\n", filename);
-	    if (style != NULL) style->warnings++;
-	    comp->filename = xmlStrdup(filename);
-	} else {
-	    comp->filename = URL;
-	}
+	comp->filename = filename;
     } else {
 	comp->filename = NULL;
     }
 
 error:
@@ -269,13 +256,8 @@
     } else {
 	comp->filename = NULL;
     }
 
 error:
-    if (base != NULL)
-	xmlFree(base);
-    if (filename != NULL)
-	xmlFree(filename);
-
     return ((xsltElemPreCompPtr) comp);
 }