My semi-educated guess would be that the multisample resolve blit sets the size wrong. That would explain why out of the many glGetTexImage calls we're doing this is the only one that fails. Time to write a stand-alone test case I guess.