fix(ui,db): harden NULL handling, fix CWE-134, optimize iterations
Some checks failed
CI Code / Code Coverage (push) Failing after 10m34s
CI Code / Check spelling (push) Failing after 10m47s
CI Code / Check coding style (push) Failing after 11m4s
CI Code / Linux (ubuntu) (push) Failing after 11m19s
CI Code / Linux (debian) (push) Failing after 11m28s
CI Code / Linux (arch) (push) Failing after 11m38s
Some checks failed
CI Code / Code Coverage (push) Failing after 10m34s
CI Code / Check spelling (push) Failing after 10m47s
CI Code / Check coding style (push) Failing after 11m4s
CI Code / Linux (ubuntu) (push) Failing after 11m19s
CI Code / Linux (debian) (push) Failing after 11m28s
CI Code / Linux (arch) (push) Failing after 11m38s
security(CWE-134): fix format string injections + add CI check fix(ui): subwindow lifecycle, newwin/newpad guards, fallback timestamps fix(db): sqlite cleanup on failures, sqlite3_close_v2 fix(xmpp): queued_messages loop, barejid leak perf(core): g_hash_table_iter_init instead of g_hash_table_get_keys refactor(ui): CLAMP macro in _check_subwin_width test: XEP-0012 and XEP-0045 functional tests Author: jabber.developer2 Closes #58, #85
This commit is contained in:
@@ -437,18 +437,7 @@ form_get_form_type_field(DataForm* form)
|
||||
gboolean
|
||||
form_tag_exists(DataForm* form, const char* const tag)
|
||||
{
|
||||
GList* tags = g_hash_table_get_keys(form->tag_to_var);
|
||||
GList* curr = tags;
|
||||
while (curr) {
|
||||
if (g_strcmp0(curr->data, tag) == 0) {
|
||||
g_list_free(tags);
|
||||
return TRUE;
|
||||
}
|
||||
curr = g_list_next(curr);
|
||||
}
|
||||
|
||||
g_list_free(tags);
|
||||
return FALSE;
|
||||
return g_hash_table_contains(form->tag_to_var, tag);
|
||||
}
|
||||
|
||||
form_field_type_t
|
||||
|
||||
Reference in New Issue
Block a user