diff --git a/valid.c b/valid.c
index bec4f9a..390195e 100644
--- a/valid.c
+++ b/valid.c
@@ -53,7 +53,6 @@
 static void
 xmlVErrMemory(xmlValidCtxtPtr ctxt, const char *extra)
 {
-    xmlStructuredErrorFunc schannel = NULL;
     xmlGenericErrorFunc channel = NULL;
     xmlParserCtxtPtr pctxt = NULL;
     void *data = NULL;
@@ -62,15 +61,14 @@
         channel = ctxt->error;
         data = ctxt->userData;
 	pctxt = ctxt->userData;
-        schannel = ctxt->serror;
     }
     if (extra)
-        __xmlRaiseError(schannel, channel, data,
+        __xmlRaiseError(NULL, channel, data,
                         pctxt, NULL, XML_FROM_DTD, XML_ERR_NO_MEMORY,
                         XML_ERR_FATAL, NULL, 0, extra, NULL, NULL, 0, 0,
                         "Memory allocation failed : %s\n", extra);
     else
-        __xmlRaiseError(schannel, channel, data,
+        __xmlRaiseError(NULL, channel, data,
                         pctxt, NULL, XML_FROM_DTD, XML_ERR_NO_MEMORY,
                         XML_ERR_FATAL, NULL, 0, NULL, NULL, NULL, 0, 0,
                         "Memory allocation failed\n");
@@ -88,24 +86,22 @@
 xmlErrValid(xmlValidCtxtPtr ctxt ATTRIBUTE_UNUSED, xmlParserErrors error,
             const char *msg, const char *extra)
 {
-    xmlStructuredErrorFunc schannel = NULL;
     xmlGenericErrorFunc channel = NULL;
     xmlParserCtxtPtr pctxt = NULL;
     void *data = NULL;
 
     if (ctxt != NULL) {
         channel = ctxt->error;
-        schannel = ctxt->serror;
         data = ctxt->userData;
 	pctxt = ctxt->userData;
     }
     if (extra)
-        __xmlRaiseError(schannel, channel, data,
+        __xmlRaiseError(NULL, channel, data,
                         pctxt, NULL, XML_FROM_DTD, error,
                         XML_ERR_ERROR, NULL, 0, extra, NULL, NULL, 0, 0,
                         msg, extra);
     else
-        __xmlRaiseError(schannel, channel, data,
+        __xmlRaiseError(NULL, channel, data,
                         pctxt, NULL, XML_FROM_DTD, error,
                         XML_ERR_ERROR, NULL, 0, NULL, NULL, NULL, 0, 0,
                         msg);
