diff --git a/ChangeLog b/ChangeLog
index 3a3a8f1..9a39291 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Tue Jun  6 17:25:23 CEST 2006 Kasimier Buchcik <libxml2-cvs@cazic.net>
+
+	* xpath.c: Fixed self-invented a segfault in xmlXPathCtxtCompile(),
+	  when the expression was not valid and @comp was NULL and I
+	  tried to do the d-o-s rewrite.
+
 Tue Jun  6 15:19:57 CEST 2006 Daniel Veillard <daniel@veillard.com>
 
 	* configure.ini NEWS doc//* libxml.spec.in : preparing release of 2.6.25
diff --git a/xpath.c b/xpath.c
index ce62a56..c6c2274 100644
--- a/xpath.c
+++ b/xpath.c
@@ -14137,12 +14137,12 @@
 #ifdef DEBUG_EVAL_COUNTS
 	comp->string = xmlStrdup(str);
 	comp->nb = 0;
-#endif
-    }
-    if ((comp->nbStep > 2) &&
-	(xmlXPathCanRewriteDosExpression(comp->expr) == 1))
-    {
-	xmlXPathRewriteDOSExpression(comp, &comp->steps[comp->last]);
+#endif    
+	if ((comp->nbStep > 2) &&
+	    (xmlXPathCanRewriteDosExpression(comp->expr) == 1))
+	{
+	    xmlXPathRewriteDOSExpression(comp, &comp->steps[comp->last]);
+	}
     }
     return(comp);
 }
@@ -14263,7 +14263,8 @@
 #endif
     {
 	xmlXPathCompileExpr(ctxt, 1);
-	if ((ctxt->comp->nbStep > 2) &&
+	if ((ctxt->comp != NULL) &&
+	    (ctxt->comp->nbStep > 2) &&
 	    (xmlXPathCanRewriteDosExpression(ctxt->comp->expr) == 1))
 	{
 	    xmlXPathRewriteDOSExpression(ctxt->comp,
