Not sure I agree with that. I think reading a null character is a valid operation and terminating execution there would be too limiting. Many of the other challenges depend on you being able to read the input until it's completed, i.e. until a null character is read and breaks you out of the loop, allowing you to perform further operations on the read values. You wouldn't be able to do that if the program stopped there or the cell wasn't changed, which would trap you in an infinite loop that keeps on printing the last read character.
I suppose I could allow the result even with an additional null character printed, but making special allowances doesn't seem in the spirit of the challenge. It's to print that exact string, not that string plus null, so in this case and with the way my interpreter works, I wouldn't consider yours a valid solution since it produces output that is not exactly equal. Other interpreters might handle this differently, but this makes the most sense to me for mine.