Arsenal moved into the last 16 of the Champions League with a laboured 3-1 win over Group H whipping boys Partizan Belgrade at the Emirates Stadium.
Successive away defeats to Shakhtar Donetsk and Braga had left the Gunners - who opened their European campaign with three straight victories - still needing a result to secure safe passage through to the knockout stages for the 11th successive season.
After a lacklustre start, Robin van Persie fired the home side ahead from the penalty spot - his first goal of the season - and after Cleo had netted a shock equaliser, substitute Theo Walcott volleyed Arsenal back into the lead before man-of-the-moment Samir Nasri swept home a third.
Arsenal finished the game with 10 men when defender Bacary Sagna was shown a red card for a professional foul on 85 minutes.
Despite maintaining a 100% home record, Arsene Wenger knows those poor away performances could yet come back to haunt his side, who finished runners-up to Shakhtar and so will face either Real Madrid, Barcelona, Bayern Munich or Schalke in the last 16.
Van Persie, taking the captain's armband in the absence of the injured Cesc Fabregas, was deployed in a deeper role behind Marouane Chamakh, with Nasri out wide but with a license to roam.
However, despite having plenty of possession, Arsenal lacked any real creativity while Almami Moreira looked lively for the visitors, whose only goal in the Champions League so far had come against Arsenal in Belgrade.
Nasri - whose fine brace against Fulham had sent Arsenal top of the Barclays Premier League on Saturday - crafted an opening from the right when his cross was headed over by Chamakh.
On 15 minutes, full-back Kieran Gibbs turned his ankle badly and was taken off on a stretcher, but managed to return to the action only to eventually be replaced by Emmanuel Eboue.
As the half-hour mark approached, Arsenal - who travel to Manchester United on Monday night - were gifted the opening goal when Marko Jovanovic upended van Persie after Alex Song had burst into the Partizan penalty area.
The Dutchman took the spot-kick himself to fire home his first goal since the final day of last season.
Partizan - nicknamed the Steamrollers and who had lost all five European ties so far - could easily have let their heads drop, but continued to try to attack.
Brazilian striker Cleo got clear down the right, but his cross into the danger zone was hacked away.
Van Persie played in Chamakh when he capitalised on a mistake by captain Mladen Krstajic, but for once this season the 10-goal Moroccan got the ball stuck under his feet and keeper Vladimir Stojkovic collected.
Given his current form, Nasri would have been expected to bury the ball when it dropped to him from van Persie's knockdown some 10 yards out at the start of the second half - but the French midfielder fired his shot high over the bar.
Arsenal's defensive frailties were exposed again when Partizan scored a shock equaliser on 52 minutes.
The ball was worked down the left and then through to Cleo, some 20 yards out. He was given the space to turn and fire a shot goalwards, which deflected off the lunging Sebastien Squillaci and looped over Lukasz Fabianski.
The atmosphere was flat as the home fans became somewhat anxious another disappointment lay ahead.
With 24 minutes left, Wenger looked to inject fresh life into the attack as he sent on Walcott, replacing the ineffective Andrey Arshavin.
The England winger was blocked on the edge of the area by Krstajic, which earned the Partizan skipper a yellow card. Nasri whipped the free-kick over the wall, with Stojkovic making a fingertip save.
The keeper, though, could do little as, on 73 minutes, Walcott lobbed the ball into the far corner after it fell to him on the right side of the area.
Chamakh was replaced by Nicklas Bendtner and the Dane had a hand in Arsenal's third after a neat exchange of passes with Song on the edge of the area fed Nasri - and the Frenchman sidestepped his marker as he swept the ball into the far corner.
There was late drama as Sagna was sent off for tripping Alexander Lazevski after being deemed last man by Italian referee Paolo Tagliavento.
Radosav Petrovic struck the free-kick, right on the edge of the area, goalwards - but Fabianski made a fine save.Reuse content