Promoting-chasing Rotherham United's long unbeaten run came to a frustrating end as they lost out at home to League One strugglers Rochdale.
The Millers, who went into the match undefeated in their last 15 matches and on the back of seven straight victories, fell to a 66th-minute goal by Stephen Humphrys.
Paul Warne's fourth-placed side were given no help by referee Graham Salisbury who failed to penalise persistent Dale infringing but were second best to the spirited visitors who were good on the ball and niggly without it.
Humphrys struck the killer blow as he latched on to Brad Inman's pass and sent a clinical finish whistling past Marek Rodak.
Rotherham pressed for an equaliser but were unable to seriously test Dale keeper Josh Lillis.
Rochdale, who remain in the relegation zone, outplayed the Millers in the first half. Rodak had to produce a great save to deny Andrew Cannon in the 13th minute and Humphrys twice went close.
The home team thought they were going into the interval in front when Richard Wood headed home Joe Newell's free-kick with just seconds of the opening period remaining.
Salisbury gave the goal and home players and fans were deep in their celebrations by the time the official changed his mind and decided there had been a foul on keeper Josh Lillis.
It was the first time in 28 outings that the Millers have failed to score.
Rotherham (4-2-2): Rodak; Emmanuel (Palmer 77), Ajayi, Wood, Mattock; Forde (Williams 59), Towell, Vaulks, Newell; Ball (Lavery 69), Smith. Subs not used: Price, Ihiekwe, Taylor, Yates.
Rochdale (3-5-2): Lillis; McGahey, McNulty, Delaney; Rafferty, Cannon, Camps, Inman (Rathbone 82), Done; Humphrys (Davies 77), Henderson. Subs not used: Moore, Wiseman, Adshead, Hart, Dobre.
Goals: Humphrys 66 (Rochdale).
Referee: Graham Salisbury (Lancashire).
Attendance: 8,418 (399).