Ilias Chair scored both goals as QPR returned to winning ways with a 2-0 victory at home to Birmingham.
Mark Warburton's side rode their luck at times during an even first half but got the result they needed after three consecutive Championship defeats.
Chair gave them the lead in the 34th minute with help from a deflection off Marc Roberts.
Defender Roberts tried to block the Morocco international's shot with a diving header but succeeded only in helping the ball past goalkeeper Matija Sarkic.
Earlier, Sarkic produced a fine save to deny Charlie Austin at point-blank range after Chair had laid the ball back from the left for the striker.
But the best chance prior to the opening goal fell to Birmingham's on-loan Manchester United youngster Tahith Chong.
Troy Deeney at the far post nodded Jeremie Bela's left-wing cross back towards the Dutchman, who misdirected his header into the grateful arms of stranded keeper Seny Dieng when it seemed easier to score.
Rangers, without injured captain Stefan Johansen, had another let-off before taking the lead when Deeney was just unable to get to Ivan Sunjic's low cross from the left after Dominic Ball had lost possession.
Birmingham continued to threaten after going behind and Maxime Colin headed over early in the second half, while substitute Lukas Jutkiewicz fired wide from near the edge of the penalty area.
But there was no way back for the Blues after Chair doubled QPR's lead after 64 minutes by slotting past Sarkic after being sent through on goal by Lyndon Dykes.
Chair and Willock are key players for Rangers and were a constant problem for the visitors.
Austin had a decent chance to add a third but blasted over after great work by Willock, who set him up after evading two challenges.
Albert Adomah, on as a substitute, also went close for Rangers when he fired into the side netting.
Sunjic's wayward late shot, which drifted high and wide, summed up a frustrating night for Lee Bowyer's Birmingham side in driving rain in west London.