mirror of
https://github.com/unicode-org/icu.git
synced 2025-04-07 06:25:30 +00:00
ICU-22820 Fix memLeak during error in genrb
Fix also ICU-22821 ICU-22822
This commit is contained in:
parent
09ae31427e
commit
6de4472db0
1 changed files with 6 additions and 0 deletions
|
@ -639,6 +639,8 @@ string_write_xml(StringResource *res, const char* id, const char* /*language*/,
|
|||
buf = convertAndEscape(&buf, 0, &bufLen, res->getBuffer(), res->length(), status);
|
||||
|
||||
if (U_FAILURE(*status)) {
|
||||
uprv_free(buf);
|
||||
uprv_free(sid);
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -671,6 +673,8 @@ alias_write_xml(AliasResource *res, const char* id, const char* /*language*/, UE
|
|||
buf = convertAndEscape(&buf, 0, &bufLen, res->getBuffer(), res->length(), status);
|
||||
|
||||
if(U_FAILURE(*status)){
|
||||
uprv_free(buf);
|
||||
uprv_free(sid);
|
||||
return;
|
||||
}
|
||||
write_utf8_file(out, UnicodeString(buf, bufLen, "UTF-8"));
|
||||
|
@ -711,6 +715,7 @@ array_write_xml(ArrayResource *res, const char* id, const char* language, UError
|
|||
subId = nullptr;
|
||||
|
||||
if(U_FAILURE(*status)){
|
||||
uprv_free(sid);
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -943,6 +948,7 @@ table_write_xml(TableResource *res, const char* id, const char* language, UBool
|
|||
res_write_xml(current, sid, language, false, status);
|
||||
|
||||
if(U_FAILURE(*status)){
|
||||
uprv_free(sid);
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue