Rotherham's failure to put Bolton to bed came back to bite them as they were held to a 1-1 draw at the AESSEAL New York Stadium.
The Millers dominated the game and looked like bagging three points thanks to Will Vaulks' fine second-half free-kick.
But after missing a host of chances to extend their lead they were caught out in the 85th minute as Christian Doidge – a man Paul Warne pursued vigorously last summer – scored his first Bolton goal to break Rotherham hearts.
It means more dropped points on home soil – where they have drawn the last three – and they have now gone six games without a win.
The Millers have been strong at home this season, though, and dominated the opening 45 minutes, creating enough chances to have gone in front.
Semi Ajayi headed wide from an early corner and then Michael Smith had two opportunities – first firing over from distance and then heading straight at Ben Alnwick when he might have scored.
Jon Taylor had an effort deflected into the side netting when he should have squared it and then Kyle Vassell missed the best chance of the lot when he failed to connect properly with a free header inside the six-yard box.
Rotherham looked like being punished early in the second half when Richard Wood's clumsy defending saw him foul Magennis, but the Bolton striker saw his penalty superbly kept out by Rodak.
And the hosts regained the ascendancy and went in front in the 56th minute with a brilliant goal.
Ryan Williams was fouled and Vaulks stepped up and whacked a low free-kick into the bottom corner.
Smith had the chance to double the lead soon after but he shot straight at Alnwick and then Williams headed wide.
Smith, who is without a goal since the opening home game of the season, came within inches of ending his drought, but his curling effort from distance crashed into the post.
That proved costly as Doidge was played in by Clayton Donaldson with five minutes remaining and the former Forest Green striker crashed home a low effort.
Rotherham: Rodak, Jones (Vyner 28), Ajayi, Wood, Mattock, Taylor (Manning 77), Vaulks, Towell, Vassell (Newell 65) Williams, Smith
Unused subs: Price, Palmer, Proctor, Wiles
Bolton: Alnwick, Hobbs, Wheater, Wilson, Olkowski, Lowe, O'Neil (Vela 34) Williams (Doidge 67), Dyer (Wildschut 67), Donaldson, Magennis
Unused subs: Matthews, Taylor, Beevers, Noone
Referee: John Brooks
Attendance: 10,111 (1918 Bolton fans)