Sounds like the player in question was tryinng to "win D&D" (a la Chevy Chase on this week's episode of Community).
I don't see anything inappropriate about your handling it like you did. It's pretty funny actually since everyone survived and actually gained XP.
I actually had a new player join my group last week who showed fairly quickly he likes to role-play his character as an antagonist to the others in the party. I am fine with that if it's role-played well, used judiciously without derailing the entire session, and with the expectation that it won't always work when you want to spoil another character's efforts.
When I introduced his character (an assassin), I had him execute (by order of the party's benefactor) someone the party had just rescued in the previous session. The hook was supposed to be that by comparing backstories it would be obvious that he was set up as a patsy for the real enemy.
Anyway, he decided to spin an entirely different story than the one we had created to introduce his character so I made him roll a bluff check, which he failed, and I told the rest of the group it was apparent he was lying. It was pretty effective at reminding him in a low risk situation how the rules worked.
It wasn't metagaming on his part, but I felt it was still a scenario where the style of play our group uses needed to be reinforced.