Colombo: Mahmudullah hit an unbeaten 43 to help Bangladesh edge out Sri Lanka by two wickets in a bad-tempered T20I and enter the final of the Nidahas Trophy tri-series in Colombo on Friday.
Chasing 160 for victory in a virtual semi-final, Mahmudullah steered the team home with a six off the penultimate ball but not before a heated exchange of words between the players of the two sides.
The Tigers will take on India in the final on Sunday.
Drama unfolded when Mustafizur Rahman missed two bouncers from Isuru Udana in the final over and was run out, but the Bangladesh players contested the call, saying it was a no ball due to its height.
Skipper Shakib Al Hasan looked furious on the boundary and even waved to call the batsmen back to the pavilion. But sanity prevailed at R Premadasa stadium and Bangladesh erupted after getting the winning runs.
It was a crucial third-wicket partnership between opener Tamim Iqbal, who made 50 off 42 balls, and Mushfiqur Rahim, who hit 28, that set up the win for the underdogs.
Mystery spinner Akila Dananjaya claimed two wickets.
Earlier Kusal Perera and Thisara Perera struck gritty half-centuries to lift the hosts to 159-7 after being put into bat first.
The left-handed pair of Kusal (61) and Thisara (58) counter-attacked after Sri Lanka were reduced to 41-5.
Pace spearhead Mustafizur claimed two wickets.
The tournament commemorates 70 years of Sri Lankan independence.