whisper: fix issue in topic list copy

Fixes #16271. What was appeneded was a pointer to
an object that changes during the iteration.
This commit is contained in:
Guillaume Ballet 2018-03-23 16:35:50 +01:00
parent 85ea9159d0
commit fd8a2786d4

View file

@ -558,9 +558,10 @@ func (api *PublicWhisperAPI) NewMessageFilter(req Criteria) (string, error) {
}
if len(req.Topics) > 0 {
topics = make([][]byte, 0, len(req.Topics))
for _, topic := range req.Topics {
topics = append(topics, topic[:])
topics = make([][]byte, len(req.Topics))
for i, topic := range req.Topics {
topics = append(topics, make([]byte, 0, len(topic)))
copy(topics[i], topic[:])
}
}