fix potential crash if ctxt->sax->ignorableWhitespace is NULL as reported

* parser.c: fix potential crash if ctxt->sax->ignorableWhitespace
  is NULL as reported by bug #172255
Daniel
diff --git a/ChangeLog b/ChangeLog
index d8aa20f..1ced5dc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Thu Mar 31 16:11:10 CEST 2005 Daniel Veillard <daniel@veillard.com>
+
+	* parser.c: fix potential crash if ctxt->sax->ignorableWhitespace
+	  is NULL as reported by bug #172255
+
 Thu Mar 31 15:36:52 CEST 2005 Daniel Veillard <daniel@veillard.com>
 
 	* relaxng.c: fixed a problem in Relax-NG validation #159968
diff --git a/parser.c b/parser.c
index d089882..990d2c6 100644
--- a/parser.c
+++ b/parser.c
@@ -3220,8 +3220,9 @@
 		        (ctxt->sax->ignorableWhitespace !=
 		         ctxt->sax->characters)) {
 			if (areBlanks(ctxt, tmp, nbchar, 1)) {
-			    ctxt->sax->ignorableWhitespace(ctxt->userData,
-						   tmp, nbchar);
+			    if (ctxt->sax->ignorableWhitespace != NULL)
+				ctxt->sax->ignorableWhitespace(ctxt->userData,
+						       tmp, nbchar);
 			} else if (ctxt->sax->characters != NULL)
 			    ctxt->sax->characters(ctxt->userData,
 						  tmp, nbchar);
@@ -3274,8 +3275,9 @@
 		    ctxt->input->cur = in;
 
 		    if (areBlanks(ctxt, tmp, nbchar, 0)) {
-			ctxt->sax->ignorableWhitespace(ctxt->userData,
-					       tmp, nbchar);
+		        if (ctxt->sax->ignorableWhitespace != NULL)
+			    ctxt->sax->ignorableWhitespace(ctxt->userData,
+							   tmp, nbchar);
 		    } else if (ctxt->sax->characters != NULL)
 			ctxt->sax->characters(ctxt->userData,
 					      tmp, nbchar);