(CNN) -- Lionel Messi grabbed a late winner as Barcelona scored a 3-2 victory at bottom club Osasuna to maintain their runaway charge towards the Spanish Primera title.
Messi is hugged by Daniel Alves after his late winner at Osasuna.
Barcelona were made to fight all the way in Sunday's late game and were trailing 2-1 with only 10 minutes remaining.
Goals from Miguel Flano in the 62nd minute and Walter Pandiani just 10 minutes later had put the home side ahead after Cameroon star Samuel Eto'o gave Barca the lead just before the break.
Barcelona, who have gone on a tremendous winning run after losing their first game of the season, equalized through Xavi before Argentina ace Messi wrapped up the three points with five minutes remaining.
Victory leaves Barca 12 points clear of arch-rivals Real Madrid after the two-time defending champions beat Real Mallorca 3-0 earlier on Sunday.
Real captain Raul chose the ideal time to mark his 500th Spanish league appearance for the Madrid giants by scoring in the away win.
Dutch international winger Arjen Robben had put Real ahead after just three minutes with striking ace Raul converting in the 17th minute.
Sergio Ramos scored a clinching third in the second half as Real moved ahead of Sevilla on goal difference with Valencia in third a further point adrift.
In French League action on Sunday, Bordeaux closed to within a point of reigning champions Lyon at the top of the standings with a 4-0 home thrashing of Paris Saint Germain.
Lyon were held 1-1 by Lorient on Saturday to give Laurent Blanc's men the chance to close the gap.
In the Scottish Cup, Hearts won 2-0 at Edinburgh rivals Hibernian in their fourth round clash.