@@ -499,7 +499,7 @@ struct cvrf_vulnerability *cvrf_vulnerability_clone(const struct cvrf_vulnerabil
499499 clone -> ordinal = vuln -> ordinal ;
500500 clone -> title = oscap_strdup (vuln -> title );
501501 clone -> system_id = oscap_strdup (vuln -> system_id );
502- clone -> system_id = oscap_strdup (vuln -> system_name );
502+ clone -> system_name = oscap_strdup (vuln -> system_name );
503503 clone -> discovery_date = oscap_strdup (vuln -> discovery_date );
504504 clone -> release_date = oscap_strdup (vuln -> release_date );
505505 clone -> cwes = oscap_list_clone (vuln -> cwes , (oscap_clone_func ) cvrf_vulnerability_cwe_clone );
@@ -2068,8 +2068,10 @@ struct cvrf_reference *cvrf_reference_parse(xmlTextReaderPtr reader) {
20682068 continue ;
20692069 }
20702070 if (xmlStrcmp (xmlTextReaderConstLocalName (reader ), TAG_URL ) == 0 ) {
2071+ free (ref -> url );
20712072 ref -> url = oscap_element_string_copy (reader );
20722073 } else if (xmlStrcmp (xmlTextReaderConstLocalName (reader ), TAG_DESCRIPTION ) == 0 ) {
2074+ free (ref -> description );
20732075 ref -> description = oscap_element_string_copy (reader );
20742076 }
20752077 xmlTextReaderNextNode (reader );
@@ -2125,10 +2127,13 @@ struct cvrf_revision *cvrf_revision_parse(xmlTextReaderPtr reader) {
21252127 continue ;
21262128 }
21272129 if (xmlStrcmp (xmlTextReaderConstLocalName (reader ), TAG_NUMBER ) == 0 ) {
2130+ free (revision -> number );
21282131 revision -> number = oscap_element_string_copy (reader );
21292132 } else if (xmlStrcmp (xmlTextReaderConstLocalName (reader ), TAG_DATE ) == 0 ) {
2133+ free (revision -> date );
21302134 revision -> date = oscap_element_string_copy (reader );
21312135 } else if (xmlStrcmp (xmlTextReaderConstLocalName (reader ), TAG_DESCRIPTION ) == 0 ) {
2136+ free (revision -> description );
21322137 revision -> description = oscap_element_string_copy (reader );
21332138 }
21342139 xmlTextReaderNextNode (reader );
0 commit comments