diff -r 376ef91111f6 -r b174e721663e application/settings.c --- a/application/settings.c Wed Dec 17 22:36:41 2025 +0100 +++ b/application/settings.c Sat Dec 27 22:47:56 2025 +0100 @@ -146,7 +146,7 @@ CxList *locations = NULL; if(addlocation) { - locations = cxLinkedListCreateSimple(CX_STORE_POINTERS); + locations = cxLinkedListCreate(NULL, CX_STORE_POINTERS); cxListAdd(locations, strdup(wdata->url)); } pwdstore_put(wdata->settings->pwdstore, id, user, password); @@ -854,7 +854,7 @@ settings->repo_encryption = ui_int_new(obj->ctx, NULL); settings->repo_disable_verification = ui_int_new(obj->ctx, NULL); CxList *repo_keys = settings->repo_keys->data; - repo_keys->collection.cmpfunc = (cx_compare_func)strcmp; + cxSetCompareFunc(repo_keys, strcmp); ui_list_append(settings->repo_tls_versions, "Default"); ui_list_append(settings->repo_tls_versions, "TLSv1.3"); @@ -872,10 +872,10 @@ CxList *credentials_locations = settings->credentials_locations->data; credentials_users->collection.advanced_destructor = list_str_destructor; credentials_users->collection.destructor_data = settings->obj->ctx; - credentials_users->collection.cmpfunc = (cx_compare_func)strcmp; + cxSetCompareFunc(credentials_users, strcmp); credentials_locations->collection.advanced_destructor = list_str_destructor; credentials_locations->collection.destructor_data = settings->obj->ctx; - credentials_locations->collection.cmpfunc = (cx_compare_func)strcmp; + cxSetCompareFunc(credentials_locations, strcmp); settings->keys_list = ui_list_new(obj->ctx, NULL); settings->key_name = ui_string_new(obj->ctx, NULL); @@ -921,7 +921,7 @@ // select credentials dropdown value CxList *cred = settings->repo_credentials->data; - cred->collection.cmpfunc = (cx_compare_func)strcmp; + cxSetCompareFunc(cred, strcmp); ssize_t cred_index = repo->stored_user.value.ptr ? cxListFind(cred, repo->stored_user.value.ptr) : 0; if(cred_index > 0) { ui_list_setselection(settings->repo_credentials, cred_index); @@ -932,7 +932,7 @@ // load encryption value and default key value ui_set(settings->repo_encryption, repo->full_encryption.value); CxList *keys = settings->repo_keys->data; - keys->collection.cmpfunc = (cx_compare_func)strcmp; + cxSetCompareFunc(keys, strcmp); ssize_t key_index = repo->default_key.value.ptr ? cxListFind(keys, repo->default_key.value.ptr) : 0; if(key_index > 0) { ui_list_setselection(settings->repo_keys, key_index); @@ -942,7 +942,7 @@ // select tls version from dropdown menu CxList *tlsVersions = settings->repo_tls_versions->data; - tlsVersions->collection.cmpfunc = (cx_compare_func)strcmp; + cxSetCompareFunc(tlsVersions, strcmp); const char *tls_str = dav_tlsversion2str(repo->ssl_version.value); if(!tls_str) tls_str = ""; ssize_t tlsv_index = cxListFind(tlsVersions, tls_str); @@ -1317,7 +1317,7 @@ size_t numlocations = cxListSize(ui_locations); CxList *locations = NULL; if(numlocations > 0) { - locations = cxArrayListCreateSimple(CX_STORE_POINTERS, numlocations); + locations = cxArrayListCreate(NULL, CX_STORE_POINTERS, numlocations); CxIterator i = cxListIterator(ui_locations); cx_foreach(char*, loc, i) { cxListAdd(locations, strdup(loc));