Skip to content

Commit 4066097

Browse files
committed
fix xread/xreadgroup for map->array type mapping
1 parent 60fd22c commit 4066097

File tree

1 file changed

+12
-5
lines changed

1 file changed

+12
-5
lines changed

packages/client/lib/commands/generic-transformers.ts

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -475,8 +475,8 @@ export function transformStreamsMessagesReplyResp2(reply: Array<any> | null): St
475475
export function transformStreamsMessagesReplyResp3(reply: any | null): StreamsMessagesReply | null {
476476
if (reply === null) return null;
477477

478+
const ret: StreamsMessagesReply = [];
478479
if (reply instanceof Map) {
479-
const ret: StreamsMessagesReply = [];
480480
for (const [name, rawMessages] of reply) {
481481
ret.push({
482482
name,
@@ -486,17 +486,24 @@ export function transformStreamsMessagesReplyResp3(reply: any | null): StreamsMe
486486

487487
return ret;
488488
} else if (reply instanceof Array) {
489-
return transformStreamsMessagesReplyResp2(reply);
489+
for (let i=0; i < reply.length; i += 2) {
490+
const name = reply[i];
491+
const rawMessages = reply[i+1];
492+
493+
ret.push({
494+
name,
495+
messages: transformStreamMessagesReply(rawMessages)
496+
});
497+
}
490498
} else {
491-
const ret: StreamsMessagesReply = [];
492499
for (const [name, rawMessages] of Object.entries(reply)) {
493500
const m = rawMessages as Array<any>;
494501
ret.push({
495502
name,
496503
messages: transformStreamMessagesReply(m),
497504
})
498505
}
499-
500-
return ret;
501506
}
507+
508+
return ret;
502509
}

0 commit comments

Comments
 (0)