Fernando Alonso has won the Singapore Grand Prix at the Marina Bay circuit after leading from the first corner to the chequered flag.
Sebastian Vettel, who finished second, appeared to have the quicker car for portions of the race, but was unable to pass either on the circuit or during the pitstops.
Championship leader Mark Webber finished third, Jenson Button was fourth, but Lewis Hamilton failed to finish for the second race in a row, after tangling with Webber after a safety-car period.
Vettel got the best start from second place on the grid, but backed off when Alonso started to move across to cover the inside of the first corner.
Out of the first three corners, the order of the top five remained the same as on the grid: Alonso leading Vettel, Hamilton, Button and Webber.
The safety car was brought out at the end of the first lap because Vitantonio Liuzzi had stopped on the circuit.
Webber decided to pit and change tyres at this stage, dropping back down the order, but later on in the race his pace began to improve.
In fact the Australian was able to leapfrog both McLarens when they pitted. Alonso and Vettel pitted together, reacting to the flurry of stops behind them, and emerged in the same order.
Vettel looked much quicker immediately after the stop, but before he could mount a challenge, the safety car was out again because Kamui Kobayashi and Bruno Senna had crashed into the barriers at turn 18.