diff --git a/contrib/codecs/rdwr/codec.go b/contrib/codecs/rdwr/codec.go
index 082635ba45a071321ad7beba731e733da1f001ba..cb2df7a77066dfa1cee51d1b30f8598a4591e1a1 100644
--- a/contrib/codecs/rdwr/codec.go
+++ b/contrib/codecs/rdwr/codec.go
@@ -44,9 +44,9 @@ func NewCodec(rd io.Reader, wr io.Writer, onError func(error)) *Codec {
 }
 
 func (c *Codec) listen() error {
-	var msg json.RawMessage
 	dec := json.NewDecoder(c.rd)
 	for {
+		var msg json.RawMessage
 		// reading a message
 		err := dec.Decode(&msg)
 		if err != nil {