Doncaster Rovers earned their first win in 10 matches as Chris Brown netted a double at the Keepmoat Stadium.
Brown grabbed the first for Doncaster in the seventh minute and the home side never looked back.
James Coppinger was credited with the second following a 52nd-minute goalmouth scramble and Brown added the third from the penalty spot in the 69th minute.
A delighted Rovers boss Paul Dickov said: “Chris Brown was magnificent and deservedly scored a couple of goals, but he flogs himself to death every game and we need to bring someone in to help him out.
“James Coppinger’s just come back from injury and I thought he was outstanding. When he plays like that he’s as good as anything in the league.
“But the most important thing was we were outstanding as a team and, when we play like that, we can match anyone.”