Rahmat Shah struck his second successive fifty of the World Cup as Afghanistan looked to chase down a target of 242 against Sri Lanka on Monday and keep their semi-final hopes alive.
Rahmat, 30, came in without a run on the board after opener Rahmanullah Gurbaz fell for fourth-ball duck.
He responded with a 61-ball fifty to follow his 77 not out in an eight-wicket win over Pakistan last time out.
But on 62, one delivery after being dropped, he chipped a slower ball from Kasun Rajitha to mid-on, with Afghanistan now 131-3 off 28 overs.
Afghanistan are bidding for a third win of the tournament, having already thrashed defending champions England by 69 runs.
Earlier, they dismissed Sri Lanka for 241, with recalled left-arm quick Fazalhaq Farooqi starring with 4-34 in 10 overs.