gob is appending gibberish to my object while decoding

65 Views Asked by At

I was trying to encode and decode HTTP responses. to deal with the body I created a custom ReadCloser with its own UnmarshalBinary and MarshalBinary methods. The gob output was inconsistent with the output of the UnmarshalBinary

I also created a sample repo to demonstrate the same - https://github.com/slayerjain/gob-decode-issue.

I've also created an issue on the golang repo - https://github.com/golang/go/issues/51645

1

There are 1 best solutions below

0
On

Thanks to a user on Reddit I found the solution. The problem is that in the UnmarshalBinary method I need to create a copy of the byte array. Else it'll be populated with other data since it's a pointer.

ref: https://www.reddit.com/r/golang/comments/tddjdd/gob_is_appending_gibberish_to_my_object/