tmp_record = GetCString(idx++, rec);
if (_add_label_info_into_list(locale, tmp_record,
&info->label)) {
+ if (tmp_record)
+ free(tmp_record);
+
return PMINFO_R_ERROR;
}
}
tmp_record = GetCString(idx++, rec);
if (_add_icon_info_into_list(locale, tmp_record,
&info->icon)) {
+ if (tmp_record)
+ free(tmp_record);
+
return PMINFO_R_ERROR;
}
}
if (pkg_disable_filter_statue != PackageDisableFilterStatus::None) {
tmp_record = GetCString(idx++, rec);
- if (!CheckPkgDisableFilter(pkg_disable_filter_statue, tmp_record, info))
- continue;
+ if (tmp_record) {
+ bool filter_passed = CheckPkgDisableFilter(pkg_disable_filter_statue,
+ tmp_record, info);
+ free(tmp_record);
+
+ if (!filter_passed)
+ continue;
+ }
}
if (flag & PMINFO_APPINFO_GET_CATEGORY) {