From fe8f9ee6119712ab35bedf5a425be30b32184d24 Mon Sep 17 00:00:00 2001 From: Jason Volk Date: Tue, 17 Sep 2019 18:11:41 -0700 Subject: [PATCH] modules/client/sync/rooms/timeline: Conditional prev_batch; minor cleanup. --- modules/client/sync/rooms/timeline.cc | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/modules/client/sync/rooms/timeline.cc b/modules/client/sync/rooms/timeline.cc index bcb0ce48d..c51c785d7 100644 --- a/modules/client/sync/rooms/timeline.cc +++ b/modules/client/sync/rooms/timeline.cc @@ -209,18 +209,19 @@ ircd::m::sync::room_timeline_polylog(data &data) _room_timeline_polylog_events(data, *data.room, limited, ret) }; - // prev_batch - json::stack::member - { - *data.out, "prev_batch", string_view{prev} - }; - // limited json::stack::member { *data.out, "limited", json::value{limited} }; + // prev_batch + if(likely(prev)) + json::stack::member + { + *data.out, "prev_batch", string_view{prev} + }; + return ret; } @@ -278,17 +279,12 @@ ircd::m::sync::_room_timeline_polylog_events(data &data, if(i > 0) for(++it; it && i > -1; ++it, --i) { - const m::event::idx &event_idx - { - it.event_idx() - }; - const m::event &event { *it }; - ret |= _room_timeline_append(data, array, event_idx, event); + ret |= _room_timeline_append(data, array, it.event_idx(), event); } return m::event_id(event_idx, std::nothrow);