mirror of
https://github.com/nextcloud/desktop.git
synced 2024-10-24 21:35:47 +03:00
Add module property to disable recursive PROPFIND
This commit is contained in:
parent
927ccf5d08
commit
9c2f223093
2 changed files with 8 additions and 2 deletions
|
@ -873,7 +873,7 @@ static struct listdir_context *fetch_resource_list(const char *uri, int depth)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (propfind_recursive_cache) {
|
if (propfind_recursive_cache && !dav_session.no_recursive_propfind) {
|
||||||
fetchCtx = get_listdir_context_from_cache(curi);
|
fetchCtx = get_listdir_context_from_cache(curi);
|
||||||
if (fetchCtx) {
|
if (fetchCtx) {
|
||||||
return fetchCtx;
|
return fetchCtx;
|
||||||
|
@ -881,7 +881,7 @@ static struct listdir_context *fetch_resource_list(const char *uri, int depth)
|
||||||
/* Not found in the recursive cache, fetch some */
|
/* Not found in the recursive cache, fetch some */
|
||||||
return fetch_resource_list_recursive(uri, curi);
|
return fetch_resource_list_recursive(uri, curi);
|
||||||
}
|
}
|
||||||
} else if (!is_first_propfind) {
|
} else if (!is_first_propfind && !dav_session.no_recursive_propfind) {
|
||||||
/* 2nd propfind */
|
/* 2nd propfind */
|
||||||
return fetch_resource_list_recursive(uri, curi);
|
return fetch_resource_list_recursive(uri, curi);
|
||||||
}
|
}
|
||||||
|
@ -2044,6 +2044,10 @@ static int owncloud_set_property(const char *key, void *data) {
|
||||||
*(ne_session**)data = dav_session.ctx;
|
*(ne_session**)data = dav_session.ctx;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
if( c_streq(key, "no_recursive_propfind")) {
|
||||||
|
dav_session.no_recursive_propfind = *(bool*)(data);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
|
@ -161,6 +161,8 @@ struct dav_session_s {
|
||||||
void *userdata;
|
void *userdata;
|
||||||
|
|
||||||
csync_hbf_info_t *chunk_info;
|
csync_hbf_info_t *chunk_info;
|
||||||
|
|
||||||
|
bool no_recursive_propfind;
|
||||||
};
|
};
|
||||||
extern struct dav_session_s dav_session;
|
extern struct dav_session_s dav_session;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue