A try from powerful France number eight Louis Picamoles salvaged a 13-13 result against Ireland as they left the Aviva Stadium with a point.
The Toulouse man's try six minutes from time, converted by Frederic Michalak, ensured the French ended their run of three straight defeats.
It had looked like Ireland would hold on to pick up a priceless Six Nations win but a series of injury concerns over Brian O'Driscoll and Luke Marshall left the hosts scrambling for fit players before Picamoles crashed over in the 73rd minute.
It was the second successive draw between the two sides but extended France's winless streak over the past two Six Nations to seven, their worst run since 1926-27, and leaves them needing to beat Scotland at home next Saturday to have any chance of avoiding the wooden spoon.
The Irish made the early running in terrible weather conditions and were rewarded after a superb tactical kick deep into the French 22 by O'Driscoll set up a lineout.
Peter O'Mahony won the ball and from the resulting driving maul Heaslip squeezed over the line to score his eighth international try - Jackson belied concerns over his place-kicking, after a disastrous performance against Scotland, by landing a superb conversion.
France were presented with a golden opportunity to reduce the deficit in the 16th minute but Michalak, whose selection had raised eyebrows after three poor performances, missed his penalty from close range.
Ireland were very much in control but Jackson missed a chance to make it 10-0 in the 23rd minute as his penalty from long range drifted wide.
Michalak made no mistake with his second chance in the 27th minute as he slotted over a penalty to make it 7-3.
However, the Irish scrum were forcing the French into infringement after infringement and Jackson, assuming responsibility when the Irish could have kicked for the corner, opted for a kick at goal from long range in the 30th minute and converted it to restore the seven point advantage.
The 21-year-old, playing in only his second test, was showing little fear and he punished the French again three minutes later as he stroked a penalty over from about 45 metres for 13-3 which even had injured first choice fly-half Jonathan Sexton grinning and applauding from the stands.
Michalak's woeful first-half finished on a suitably low note as given the chance to give France a filip on the stroke of half-time he sent another kickable penalty wide to leave the Irish sitting comfortably enough at the break.
Jackson had an early chance in the second-half to extend the lead but his effort fell just short.
The Irish were still controlling the game but prop Mike Ross conceded a penalty in the 54th minute and Morgan Parra stepped up, replacing the misfiring Michalak, and converted it for 13-6.
Parra, though, proved he too was fallible, missing a tough penalty attempt just before the hour mark as the French started to pressure the hosts into a series of errors.
The visitors pressed forward desperate to redress the balance but saw a chance go begging as with extra men wide out to the right they failed to push home the advantage and the Irish defence held firm.
However, eventually the French breached the line as Picamoles took advantage of Ireland dithering after a penalty was awarded and tapping it quickly he touched it down for his fifth try for his country - Michalak stepped up to the task and converted for 13-13.
Pen: Jackson 2
Pen: Michalak, Parra
Ireland: 15 Rob Kearney, 14 Fergus McFadden, 13 Brian O'Driscoll, 12 Luke Marshall, 11 Keith Earls, 10 Paddy Jackson, 9 Conor Murray, 8 Jamie Heaslip (c) 7 Sean O'Brien, 6 Peter O'Mahony, 5 Donnacha Ryan, 4 Mike McCarthy, 3 Mike Ross, 2 Rory Best, 1 Cian Healy.
Replacements: 16 Sean Cronin, 17 David Kilcoyne, 18 Stephen Archer, 19 Donnacha O'Callaghan, 20 Iain Henderson, 21 Eoin Reddan, 22 Ian Madigan, 23 Luke Fitzgerald.
France: 15 Yoann Huget, 14 Vincent Clerc, 13 Florian Fritz, 12 Wesley Fofana, 11 Maxime Medard, 10 Frederic Michalak, 9 Morgan Parra, 8 Louis Picamoles, 7 Thierry Dusautoir, 6 Yannick Nyanga, 5 Yoann Maestri, 4 Christophe Samson, 3 Nicolas Mas, 2 Benjamin Kayser, 1 Thomas Domingo.
Replacements: 16 Guilhem Guirado, 17 Vincent Debaty, 18 Luc Ducalcon, 19 Sebastien Vahaamahina, 20 Antonie Claassen, 21 Maxime Machenaud, 22 Francois Trinh-Duc, 23 Mathieu Bastareaud.
Referee: Steve Walsh (Australia)
Assistant referees: Wayne Barnes (England), Greg Garner (England)
Television match official: Nigel Whitehouse (Wales)