Shrewsbury climbed back to the top of League One after a 4-0 home win against Bristol Rovers extended their unbeaten start to 14 matches.
Wigan extended their unbeaten run to five games, but had Sam Morsy to thank for a late equaliser in a 1-1 draw at Gillingham.
Bradford failed to make up ground on second-placed Wigan after they were held to a 1-1 home draw by Oldham.
Rotherham stay fourth after a 3-1 defeat at AFC Wimbledon.
In-form sides Oxford and Charlton extended their respective unbeaten runs after drawing 1-1 at the Kassam Stadium.
Marc-Antoine Fortune’s first goal of the season for Southend was cancelled out by Peterborough’s Jack Marriott in a 1-1 draw at Roots Hall.
Jordy Hiwula fired a late equaliser to earn Fleetwood a 1-1 draw at Scunthorpe.
Blackburn were held 1-1 at home by bottom club Plymouth.
Curtis Tilt headed Blackpool’s second-half winner in a 2-1 victory against Bury.
Tyler Roberts converted from the penalty spot to earn Walsall a 1-1 draw at MK Dons.
Northampton fought back to secure a point in a 2-2 draw at Rochdale.
Ian Henderson gave Dale a half-time lead and followed up to add another from a rebound after his second-half penalty had been saved.
Ash Taylor headed the Cobblers back in it and David Buchanan fired a 78th-minute equaliser before O’Toole’s missed penalty left Jimmy Floyd Hasselbaink’s side winless in their last eight league matches.