Match ends, Wolverhampton Wanderers 1, Rotherham United 0.
Wolverhampton Wanderers 1-0 Rotherham United
Andreas Weimann got the only goal against Rotherham as Wolves edged to a nervy first win in eight games.
Wolves keeper Carl Ikeme twice rescued his side with saves from Danny Ward before Weimann scored in first-half injury time.
That came 10 minutes after Rotherham keeper Lewis Price had saved Helder Costa's penalty.
But Wolves could not add to their lead and, but for a poor late miss by Semi Ajayi, Rotherham would have drawn.
Defeat for the Millers leaves the Championship's bottom club still with only one away point this season.
Wolves' first victory since winning at Barnsley on 31 January, three days after their FA Cup win at Liverpool, leaves Paul Lambert's side still just a point clear of trouble.
The hosts could have been two goals down inside the first 20 minutes after lone Millers striker Ward was twice sent clear, the first thanks to a careless misplaced pass from Romain Saiss. But keeper Ikeme twice repelled the threat, as Ward fired straight at him each time.
Wolves wasted a chance to go one up on 34 minutes when, having himself gone down under Joe Mattock's challenge, Costa took a weak penalty that was saved at a comfortable height to his left by Rotherham keeper Price.
But on the stroke of half-time, Weimann chased an apparently lost cause, won possession and rounded Price before tucking the ball into an empty net.
Seconds later, he clattered into full-back Will Vaulks with an inflammatory challenge right in front of the away dugout that ended up with a booking for Weimann and a lengthy lecture for both managers from referee Jeremy Simpson.
The second half was a more open affair, with chances at either end before centre-half Ajayi's late miss.
Wolves head coach Paul Lambert: "We have been playing better than that every week but losing.
We have won the game and that is all that matters, I would absolutely take winning the game and playing badly.
"I am sick to death of playing well but losing games that we have dominated. We were very nervy at the end when their lad has had a chance but I am just pleased with the win.
"That is four points from the last two games, which I felt was a minimum requirement and it's two clean sheets which is a bonus.
"We have got to try and win our game in hand on Tuesday now to give us more breathing space."
Rotherham interim boss Paul Warne: "I was pleased with the performance but not the result. We were really well prepared for the game, the lads were really well motivated.
"I thought we were the better team, we created three really good chances and the one at the end would have got us a really good away point and would have been a nice bit of sugar for us.
"Unfortunately we didn't and people will think it is the same old story, but it wasn't. I don't think we deserved to lose."
- 19PriceSubstituted forGibbs-Whiteat 82'minutes
- 17Hélder CostaSubstituted forBödvarssonat 66'minutes
- 64MarshallSubstituted forCavaleiroat 86'minutes
- 63WeimannBooked at 45mins
- 3MattockBooked at 88mins
- 7FordeSubstituted forBrayat 83'minutes
- 33SmallwoodSubstituted forYatesat 57'minutes
- 22NewellSubstituted forTaylorat 57'minutes
- Jeremy Simpson
- Shots on Target
Second Half ends, Wolverhampton Wanderers 1, Rotherham United 0.
Attempt missed. Semi Ajayi (Rotherham United) right footed shot from very close range is too high.
Corner, Wolverhampton Wanderers. Conceded by Lee Frecklington.
Corner, Wolverhampton Wanderers. Conceded by Joe Mattock.
Conor Coady (Wolverhampton Wanderers) wins a free kick in the defensive half.
Foul by Lee Frecklington (Rotherham United).
Joe Mattock (Rotherham United) is shown the yellow card for a bad foul.
Morgan Gibbs-White (Wolverhampton Wanderers) wins a free kick on the right wing.
Foul by Joe Mattock (Rotherham United).
Attempt missed. Semi Ajayi (Rotherham United) header from the centre of the box misses to the left. Assisted by Will Vaulks with a cross.
Foul by George Saville (Wolverhampton Wanderers).
Jerry Yates (Rotherham United) wins a free kick in the defensive half.
Attempt saved. Morgan Gibbs-White (Wolverhampton Wanderers) left footed shot from the centre of the box is saved in the bottom right corner. Assisted by David Edwards.
Substitution, Wolverhampton Wanderers. Ivan Cavaleiro replaces Ben Marshall.
Offside, Wolverhampton Wanderers. Ben Marshall tries a through ball, but Andreas Weimann is caught offside.
Substitution, Rotherham United. Alex Bray replaces Anthony Forde.
Andreas Weimann (Wolverhampton Wanderers) wins a free kick in the defensive half.
Foul by Lee Frecklington (Rotherham United).
Substitution, Wolverhampton Wanderers. Morgan Gibbs-White replaces Jack Price.