Patch for HP compilers and patch to xmllint.c from Sven Heinicke, Daniel
diff --git a/ChangeLog b/ChangeLog
index 13df08f..9babfb0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+Fri Aug  4 11:21:50 PDT 2000 Daniel Veillard <Daniel.Veillard@w3.org>
+
+	* configure.in: patch for HP compiler
+
+2000-08-04  Sven Heinicke  <sven@zen.org>
+
+	* xmllint.c: Was coredumping sometimes when the file given didn't
+	exist.
+
 Sat Jul 22 05:59:05 CEST 2000 Daniel Veillard <Daniel.Veillard@w3.org>
 
 	* parser.c xmlIO.[ch]: fixed the problem of encoding support
diff --git a/configure.in b/configure.in
index 86565cd..e9c816d 100644
--- a/configure.in
+++ b/configure.in
@@ -126,7 +126,7 @@
 if test "${CC}" != "gcc" ; then
     case "${host}" in
           *-*-hpux* )
-	       CFLAGS="${CFLAGS} -Wp,-H16800 -Ae"
+	       CFLAGS="${CFLAGS} -Wp,-H30000 -Ae"
 	       ;;
     esac
 fi
diff --git a/xmllint.c b/xmllint.c
index 18805f7..d661df9 100644
--- a/xmllint.c
+++ b/xmllint.c
@@ -426,30 +426,39 @@
 	    xmlSAXHandler silent, *old;
 
 	    ctxt = xmlCreateFileParserCtxt(filename);
-	    memcpy(&silent, ctxt->sax, sizeof(silent));
-	    old = ctxt->sax;
-	    silent.error = xmlHTMLError;
-	    if (xmlGetWarningsDefaultValue)
+
+	    if (ctxt == NULL) {	      
+	      /* If xmlCreateFileParseCtxt() return NULL something
+		 strange happened so we don't want to do anything.  Do
+		 we want to print an error message here?
+		 <sven@zen.org> */
+	      doc == NULL;
+	    } else {
+	      memcpy(&silent, ctxt->sax, sizeof(silent));
+	      old = ctxt->sax;
+	      silent.error = xmlHTMLError;
+	      if (xmlGetWarningsDefaultValue)
 		silent.warning = xmlHTMLWarning;
-	    else 
+	      else 
 		silent.warning = NULL;
-	    silent.fatalError = xmlHTMLError;
-            ctxt->sax = &silent;
-	    ctxt->vctxt.error = xmlHTMLValidityError;
-	    if (xmlGetWarningsDefaultValue)
+	      silent.fatalError = xmlHTMLError;
+	      ctxt->sax = &silent;
+	      ctxt->vctxt.error = xmlHTMLValidityError;
+	      if (xmlGetWarningsDefaultValue)
 		ctxt->vctxt.warning = xmlHTMLValidityWarning;
-	    else 
+	      else 
 		ctxt->vctxt.warning = NULL;
 
-	    xmlParseDocument(ctxt);
+	      xmlParseDocument(ctxt);
 
-	    ret = ctxt->wellFormed;
-	    doc = ctxt->myDoc;
-	    ctxt->sax = old;
-	    xmlFreeParserCtxt(ctxt);
-	    if (!ret) {
+	      ret = ctxt->wellFormed;
+	      doc = ctxt->myDoc;
+	      ctxt->sax = old;
+	      xmlFreeParserCtxt(ctxt);
+	      if (!ret) {
 		xmlFreeDoc(doc);
 		doc = NULL;
+	      }
 	    }
 #ifdef HAVE_SYS_MMAN_H
 	} else if (memory) {
@@ -473,6 +482,14 @@
     }
 #endif
 
+    /*
+     * If we don't have a document we might as well give up.  Do we
+     * want an error message here?  <sven@zen.org> */
+    if (doc == NULL)
+      {
+	return;
+      }
+
 #ifdef LIBXML_DEBUG_ENABLED
     /*
      * shell interraction
@@ -703,3 +720,4 @@
 
     return(0);
 }
+