- Makefile.am: added --push regression tests
- parserInternals.c: the XML parser segfaulted in --push mode
Daniel
diff --git a/ChangeLog b/ChangeLog
index 00c4821..3c5716e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Wed Jun 27 18:33:13 CEST 2001 Daniel Veillard <Daniel.Veillard@imag.fr>
+
+	* Makefile.am: added --push regression tests
+	* parserInternals.c: the XML parser segfaulted in --push mode
+
 Wed Jun 27 13:09:51 CEST 2001 Daniel Veillard <Daniel.Veillard@imag.fr>
 
 	* configure.in: moved the symlinks detection within a CVS
diff --git a/Makefile.am b/Makefile.am
index 0e3faa4..ae4a1b3 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -185,6 +185,26 @@
 	      diff result.$$name result2.$$name ; \
 	      rm result.$$name result2.$$name ; \
 	  fi ; fi ; done)
+	@(echo > .memdump)
+	@echo "##"
+	@echo "## XML push regression tests"
+	@echo "##"
+	@echo "## You should see one warning on entity 'title.xml' for ent2"
+	@echo "##"
+	@(for i in $(srcdir)/test/* ; do \
+	  name=`basename $$i`; \
+	  if [ ! -d $$i ] ; then \
+	  if [ ! -f $(srcdir)/result/$$name ] ; then \
+	      echo New test file $$name ; \
+	      $(top_builddir)/xmllint --push $$i > $(srcdir)/result/$$name ; \
+	  else \
+	      echo Testing $$name ; \
+	      $(top_builddir)/xmllint --push $$i > result.$$name ; \
+	      diff $(srcdir)/result/$$name result.$$name ; \
+	      $(top_builddir)/xmllint --push result.$$name > result2.$$name ; \
+	      diff result.$$name result2.$$name ; \
+	      rm result.$$name result2.$$name ; \
+	  fi ; fi ; done)
 	@echo "##"
 	@echo "## XML regression tests on memory"
 	@echo "##"
diff --git a/parserInternals.c b/parserInternals.c
index cf7a96b..43b97c4 100644
--- a/parserInternals.c
+++ b/parserInternals.c
@@ -1575,7 +1575,8 @@
 	     * Specific handling of the Byte Order Mark for
 	     * UTF-8
 	     */
-	    if ((ctxt->input->cur[0] == 0xEF) &&
+	    if ((ctxt->input != NULL) &&
+		(ctxt->input->cur[0] == 0xEF) &&
 		(ctxt->input->cur[1] == 0xBB) &&
 		(ctxt->input->cur[2] == 0xBF)) {
 		ctxt->input->cur += 3;