Mikel Arteta's late goal gave Arsenal a much-needed 1-0 win over struggling QPR at the Emirates Stadium, where England midfielder Jack Wilshere returned after more than a year on the sidelines.
Arsenal had endured a difficult spell following the international break with successive defeats at Norwich and Schalke preceding a heated annual general meeting on Thursday.
It was, though, far from a vintage Arsenal display against a hard-working QPR side, who owed much to an inspired performance by goalkeeper Julio Cesar.
The Brazilian was finally beaten by Arteta's scrambled effort with eight minutes left after QPR full-back Stephane Mbia had been sent off for kicking out at Gunners defender Thomas Vermaelen.
Wilshere's previous Arsenal league appearance came in May 2011 and he missed the whole of the 2011-12 campaign with niggling ankle and knee problems, which ruled him out of Euro 2012 and the London Olympics.
The 20-year-old's first touch was greeted by huge cheers around the stadium and it was a positive start by the hosts.
Mbia diverted Andre Santos' low cross goalwards, which Cesar cleared with his legs.
In the 10th minute, a looping header from Aaron Ramsey dropped onto the top of the crossbar.
There was almost a dream return for Wilshere when he collected the ball in midfield and charged to the edge of the QPR penalty area before drilling in a low, left-foot shot which Cesar spilled but then collected as Santi Cazorla looked for a rebound.
QPR, still without a Barclays Premier League away win and bottom of the table, looked dangerous on the counter-attack, especially through Shaun Wright-Phillips who stretched Santos at every opportunity.
Arsenal threatened again on the half-hour as Olivier Giroud's angled shot was parried away before Lukas Podolski crashed a 25-yard free-kick into the defensive wall.
Wilshere then fed Santos out on the left and the Brazilian cut back inside but curled a tame effort at Cesar.
At the start of the second half, there was a moment of concern when QPR midfielder Esteban Granero stood on Wilshere's foot and left the England man on the floor. He hobbled off for some treatment but was able to rejoin the action.
In the 50th minute, a floated free-kick from Arteta into the QPR penalty area was headed goalwards by Per Mertesacker but Cesar made a good save at full stretch.
At the other end, Junior Hoilett put the ball in the Arsenal net, chipping Gunners goalkeeper Vito Mannone, but play had already been stopped by an offside flag against three QPR players.
The match was becoming an increasingly scrappy affair, as referee Anthony Taylor struggled to keep order following a series of free-kicks.
With 25 minutes left, Wilshere was replaced by Theo Walcott and left the field to a standing ovation from the home support.
Podolski then came off for Gervinho as Arsene Wenger looked to inject some pace down the flanks.
QPR made a double change as Djibril Cisse and Nedum Onuoha replaced Bobby Zamora and the injured Armand Traore.
The best opening of the game fell to Cazorla after good work from Walcott down the right but the Spaniard, who had been so impressive before the international break, blasted the ball over from 12 yards.
QPR were reduced to 10 men with 10 minutes left when Mbia was shown a red card for kicking out at Vermaelen after he had been fouled by the Gunners skipper.
Gervinho picked up an injury and was taken down the tunnel on a stretcher. He was replaced by Andrey Arshavin.
QPR continued to defend bravely as Cesar clawed a deflected clearance onto the post.
The visitors' resolve, however, was finally broken in the 84th minute.
Arteta bundled the ball in after Giroud's header was saved superbly by Cesar and the Spaniard's follow-up header hit the crossbar.
Ramsey's shot was pushed wide by the impressive QPR keeper, who also denied Cazorla as Arsenal continued to press in the closing stages.
Mannone saved from QPR substitute Jamie Mackie in stoppage time to secure a welcome victory for Wenger's battle-weary Gunners.