Barcelona are seven points clear at the top of La Liga after grinding out a 1-0 win over Real Valladolid.
Lionel Messi struck a penalty in the first half to score his 30th goal of the season in all competitions.
Elsewhere, second-placed Atletico Madrid edged Rayo Vallecano 1-0, with Antoine Griezmann scoring the winner in the second half.
The goal saw the French forward (130 goals) overtake Fernando Torres as the fifth-highest goalscorer in the club's history.
In other games, Real Sociedad thrashed Leganes 3-0 and Levante defeated Celta de Vigo 4-1.

Switzerland blank Algeria, reach round of 16 for 4th straight World Cup
Portugal survive late drama to beat Croatia
Anisimova and Fritz through as Americans sparkle at Wimbledon
Spain outclass Austria 3-0 to ease into World Cup last 16
Swiatek, Zverev power into Wimbledon round three
