Add nullptr check conditions

This commit is contained in:
Ervin Hegedus 2025-04-20 21:44:47 +02:00
parent 0c8cc6e2cf
commit 1953e37217
No known key found for this signature in database
GPG Key ID: 5FA5BC3F5EC41F61

View File

@ -238,7 +238,8 @@ int xml_process_chunk(modsec_rec *msr, const char *buf, unsigned int size, char
/* Not a first invocation. */
msr_log(msr, 4, "XML: Continue parsing.");
if (msr->txcfg->parse_xml_into_args != MSC_XML_ARGS_ONLYARGS) {
if (msr->xml->parsing_ctx != NULL &&
msr->txcfg->parse_xml_into_args != MSC_XML_ARGS_ONLYARGS) {
xmlParseChunk(msr->xml->parsing_ctx, buf, size, 0);
if (msr->xml->parsing_ctx->wellFormed != 1) {
*error_msg = apr_psprintf(msr->mp, "XML: Failed parsing document.");
@ -246,7 +247,8 @@ int xml_process_chunk(modsec_rec *msr, const char *buf, unsigned int size, char
}
}
if (msr->txcfg->parse_xml_into_args != MSC_XML_ARGS_OFF) {
if (msr->xml->parsing_ctx_arg != NULL &&
msr->txcfg->parse_xml_into_args != MSC_XML_ARGS_OFF) {
if (xmlParseChunk(msr->xml->parsing_ctx_arg, buf, size, 0) != 0) {
if (msr->xml->xml_error) {
*error_msg = msr->xml->xml_error;
@ -276,7 +278,8 @@ int xml_complete(modsec_rec *msr, char **error_msg) {
/* Only if we have a context, meaning we've done some work. */
if (msr->xml->parsing_ctx != NULL || msr->xml->parsing_ctx_arg != NULL) {
if (msr->txcfg->parse_xml_into_args != MSC_XML_ARGS_ONLYARGS) {
if (msr->xml->parsing_ctx != NULL &&
msr->txcfg->parse_xml_into_args != MSC_XML_ARGS_ONLYARGS) {
/* This is how we signalise the end of parsing to libxml. */
xmlParseChunk(msr->xml->parsing_ctx, NULL, 0, 1);
@ -295,7 +298,8 @@ int xml_complete(modsec_rec *msr, char **error_msg) {
}
}
if (msr->txcfg->parse_xml_into_args != MSC_XML_ARGS_OFF) {
if (msr->xml->parsing_ctx_arg != NULL &&
msr->txcfg->parse_xml_into_args != MSC_XML_ARGS_OFF) {
if (xmlParseChunk(msr->xml->parsing_ctx_arg, NULL, 0, 1) != 0) {
if (msr->xml->xml_error) {
*error_msg = msr->xml->xml_error;