Experienced Mayo goalkeeper Rob Hennelly was the hero of the hour as the All-Ireland finalists salvaged a last-gasp draw with Donegal.

Hennelly's 40-metre free from the left wing, four minutes into added time, earned Mayo a deserved share of the spoils after Donegal failed to score for the final 20 minutes.

Hennelly — who also saved a penalty earlier in the second half from Paddy McBrearty — held his nerve to land the levelling score in front of around 9,000 fans.

This was the third league match in a row between the sides that has ended in a draw.

Donegal deservedly led at the end of a disappointing first half by 0-07 to 0-03.

Early frees from Michael Murphy (2) and Paddy McBrearty settled the Ulster men into the lead and they were 0-05 to 0-01 up after 15 minutes thanks to excellent scores from Conor O’Donnell and the outstanding Michael Langan.

Michael Murphy battles for possession with Stephen Coen

By that stage a lacklustre Mayo had registered a few poor wides and were struggling to win clean possession around the middle.

Their only scores in the first 35 minutes came from a couple of Ryan O’Donoghue frees.

Donegal were 0-07 to 0-02 ahead when Mayo finally opened their account from play through wing-back Eoghan McLaughlin.

The second half was a whirlwind affair with the teams trading scores four times during the third quarter to preserve Donegal’s four-point lead heading down the home straight.

However, Michael Langan’s fourth point from play in the 55th minute turned out to their last score of the day.

Declan Bonner’s charges could have been further ahead had Rob Hennelly not saved a penalty from Paddy McBrearty on 51 minutes.

Mayo captain Stephen Coen was also sent off for pulling back Michael Murphy and picking up a second yellow card.

Diarmuid O'Connor is tackled by Ryan McHugh

Mayo came roaring back into contention after Coen’s dismissal, and they shot the last four points of the match to dig out the draw.

Paddy Durcan got the ball rolling in the 61st minute with a brilliant long-range effort before Jason Doherty and Ryan O’Donoghue both hit the target to set up a grandstand finish.

Mayo laid siege to the Donegal goal in the dying minutes and when goalkeeper Shaun Patton was penalised for overcarrying, up stepped his Mayo counterpart Hennelly to land the equaliser.

This was the fourth time in ten matches — since the counties met in the 2012 All-Ireland senior final — that games between the teams have ended in draws.

Mayo play Monaghan in Clones next Sunday while Donegal welcome Kildare to Ballybofey.

Mayo: R Hennelly (0-01, 1f); B Harrison, S Coen, P O’Hora; P Durcan (0-02), D McHugh, E McLaughlin (0-01); C O’Shea, C Loftus; F McDonagh, A Orme, D O’Connor; T Conroy, J Doherty (0-03), R O’Donoghue (0-04, 3f).

Subs: A O’Shea for Ormee (ht), B Walsh for McDonagh (ht), S Callinan for McHugh (47), J Flynn for Loftus (50), P Towey for C O’Shea (70).

Donegal: S Patton; C Ward, B McCole, O McFadden-Ferry; R McHugh (0-01), P Brennan, T McClenaghan; C McGonagle, M Murphy (0-04, 2f, 1'45); C Thompson, P Mogan, M Langan (0-04); P McBrearty (0-01, 1f), C O’Donnell (0-01), J Brennan.

Subs: J McGee for Thompson (10), J McKelvey for Ward (50), N O’Donnell for C O’Donnell (56), E O’Donnell for McClenaghan (58), E Doherty for McFadden-Ferry (62).

Referee: N Mooney (Cavan).