diff --git a/testSAX.c b/testSAX.c
index c64bc3c..2b2e89b 100644
--- a/testSAX.c
+++ b/testSAX.c
@@ -61,6 +61,7 @@
     NULL, /* xmlParserWarning */
     NULL, /* xmlParserError */
     NULL, /* xmlParserError */
+    NULL, /* getParameterEntity */
 };
 
 xmlSAXHandlerPtr emptySAXHandler = &emptySAXHandlerStruct;
@@ -156,7 +157,10 @@
             name, ExternalID, SystemID);
 
     if ((ExternalID != NULL) || (SystemID != NULL)) {
-        externalSubset = xmlSAXParseDTD(debugSAXHandler, ExternalID, SystemID);
+        externalSubset = xmlParseDTD(ExternalID, SystemID);
+	if (externalSubset != NULL) {
+	    xmlFreeDtd(externalSubset);
+	}
     }
 }
 
@@ -209,6 +213,22 @@
     return(NULL);
 }
 
+/**
+ * getParameterEntityDebug:
+ * @ctxt:  An XML parser context
+ * @name: The entity name
+ *
+ * Get a parameter entity by name
+ *
+ * Returns the xmlParserInputPtr
+ */
+xmlEntityPtr
+getParameterEntityDebug(xmlParserCtxtPtr ctxt, const CHAR *name)
+{
+    fprintf(stdout, "SAX.getParameterEntity(%s)\n", name);
+    return(NULL);
+}
+
 
 /**
  * entityDeclDebug:
@@ -541,6 +561,7 @@
     warningDebug,
     errorDebug,
     fatalErrorDebug,
+    getParameterEntityDebug,
 };
 
 xmlSAXHandlerPtr debugSAXHandler = &debugSAXHandlerStruct;
