summaryrefslogtreecommitdiff
path: root/src/couchdb/couch_rep_changes_feed.erl
diff options
context:
space:
mode:
Diffstat (limited to 'src/couchdb/couch_rep_changes_feed.erl')
-rw-r--r--src/couchdb/couch_rep_changes_feed.erl8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/couchdb/couch_rep_changes_feed.erl b/src/couchdb/couch_rep_changes_feed.erl
index f301b6e7..a89756e0 100644
--- a/src/couchdb/couch_rep_changes_feed.erl
+++ b/src/couchdb/couch_rep_changes_feed.erl
@@ -277,9 +277,13 @@ by_seq_loop(Server, Source, StartSeq) ->
decode_row(<<",\n", Rest/binary>>) ->
decode_row(Rest);
decode_row(Row) ->
- {[Seq, Id, {<<"changes">>,C}]} = ?JSON_DECODE(Row),
+ {Props} = ?JSON_DECODE(Row),
+ % [Seq, Id, {<<"changes">>,C}]
+ Seq = proplists:get_value(<<"seq">>, Props),
+ Id = proplists:get_value(<<"id">>, Props),
+ C = proplists:get_value(<<"changes">>, Props),
C2 = [{[{<<"rev">>,couch_doc:parse_rev(R)}]} || {[{<<"rev">>,R}]} <- C],
- {[Seq, Id, {<<"changes">>,C2}]}.
+ {[{<<"seq">>, Seq}, {<<"id">>,Id}, {<<"changes">>,C2}]}.
flush_updated_messages() ->
receive updated -> flush_updated_messages()