The Olympics budget has increased almost four-fold since 2005
MPs have voted to take almost £1.1bn from the National Lottery to pay for the 2012 London Olympics.
They approved the measure by a majority of 348 after Culture Secretary James Purnell promised no more money would be transferred afterwards.
In a Commons debate, he also announced the Treasury would change the tax regime for the Games, potentially bringing in £400m for good causes.
The Tories said there must be "no more raids" on Lottery-funded projects.
'No black hole'
Mr Purnell said the £9.3bn budget for the Games - nearly four times the estimate that helped win the bid in 2005 - was "robust". He dismissed claims of a £1.1bn "black hole".
The government won the Commons vote by 357 to nine.
The £1.085bn Lottery cash comprises an original allocation of £410m and an extra £675m.
It will be transferred from the Lottery to the Olympic Lottery Distribution Fund in 15 instalments from February 2009 to August 2012.
Challenged over the effect of using cash intended for the arts, sports and charities, Mr Purnell told MPs: "I can confirm today that there will be no further diversion from the Lottery good causes to fund the Olympics."
He also insisted the Olympic budget was not dependent on land sales, stating: "There is no black hole in the Olympic budget."
Shadow culture secretary Jeremy Hunt said: "These concessions are important but they do not undo the main damage of this afternoon's measure, which is that it is an extraordinary way to fund a £9.3bn Olympics budget - to cut budgets for grassroots sport, the very budgets that could provide the sporting legacy which was the big promise of 2012."