Jordi Alba struck a late winner for Barcelona in a 1-0 win over 10-man Osasuna on Tuesday to move the Catalans a step closer to their first La Liga title since 2019.
Xavi Hernandez's side climbed 14 points clear of second place Real Madrid, who lost 2-0 at Real Sociedad.
The visitors had debutant Jorge Herrando sent off in the first half for a professional foul on Pedri, as they sat deep and tried to frustrate hosts Barcelona.
Visiting goalkeeper Aitor Fernandez kept the leaders at bay in the second half but eventually substitute Alba, who has had reduced minutes this season, sliced home a volley to snatch a late victory.
"We're going to wait and see, but it's a giant step forward," said Xavi.
"We suffered too much. We missed some very clear chances, the kind where you can just push it in.
"And then came Jordi's goal, which sometimes makes it better to win like that."
Osasuna coach Jagoba Arrasate rotated heavily to rest players ahead of the Copa del Rey final against Madrid on Saturday, while Barca started with the same side which crushed Real Betis at the weekend.
The Catalans failed to carve out many clear opportunities in the first half against their defensive opponents.
The best chance fell to Pedri after left-back Alejandro Balde found him a few yards out from goal but he did not connect with the ball well, scuffing a shot wide.
Osasuna were reduced to 10 men before the half hour mark when Herrando pulled down Pedri as he ran in on goal.
Xavi brought on Ansu Fati after 35 minutes for Gavi, who appeared to take a knock, and the forward came close at the start of the second half but Fernandez denied him.