Skip to content
Snippets Groups Projects
Commit 48e100e0 authored by Nicolas Werner's avatar Nicolas Werner
Browse files

Url escape roomid in /messages and relax parsing of response

parent dd4dff18
No related branches found
No related tags found
No related merge requests found
......@@ -751,8 +751,8 @@ Client::messages(const MessagesOpts &opts, Callback<mtx::responses::Messages> ca
if (!opts.filter.empty())
params.emplace("filter", opts.filter);
const auto api_path =
"/client/r0/rooms/" + opts.room_id + "/messages?" + client::utils::query_params(params);
const auto api_path = "/client/r0/rooms/" + mtx::client::utils::url_encode(opts.room_id) +
"/messages?" + client::utils::query_params(params);
get<mtx::responses::Messages>(
api_path, [callback](const mtx::responses::Messages &res, HeaderFields, RequestErr err) {
......
......@@ -9,10 +9,11 @@ namespace responses {
void
from_json(const json &obj, Messages &messages)
{
messages.start = obj.at("start").get<std::string>();
messages.end = obj.at("end").get<std::string>();
messages.start = obj.value("start", "");
messages.end = obj.value("end", "");
utils::parse_timeline_events(obj.at("chunk"), messages.chunk);
if (obj.contains("chunk"))
utils::parse_timeline_events(obj.at("chunk"), messages.chunk);
}
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment