I really cant say what the cause of the problem was without being able to reproduce it.
I dont think it would be a virus, but really can t say for certain. it may have been a large PNG file that exceeded the available memory on the server, and so got corrupted on upload, or it could be any number of other possibilities. It could be that the PNG file was badly coded, or corrupted to begin with. without being able to reproduce the problem, i can only make blind stabs in the dark at guess.