France made heavy weather of beating Romania, 38-11, eventually picking up a bonus point win after an underwhelming display.
After being thoroughly outplayed at the breakdown, France needed a ten-minute spell with an extra man to finally break Romania down in the first half, with Sofiane Guitoune and Yannick Nyanga crossing to give them a 17-6 half-time lead.
Despite a stern talking to from a furious Philippe Saint-André, things didn't get much better in the second half, with France only threatening on the all too rare occasions they injected some pace into the game.
They finally picked things up in the final quarter, with Guitoune grabbing his second and Wesley Fofana then crossing for the crucial fourth try as Romania started to slip off some tackles.
Gaël Fickou sealed the win after Valentin Ursache had crossed for the Oaks, who deserved their try having caused les Bleus all sorts of problems.
That win keeps France on course for a pool decider with Ireland but on this display, they will have to improve a great deal to avoid a defeat and a likely quarter-final against the All Blacks.
For their part, Romania continued the impressive displays of the so called lesser teams in this tournament, but apart from their excellent scrum and breakdown work, were a little too limited to make their possession and territorial dominance in the first half count.
Romania drew first blood at scrum-time, disrupting a French put-in to earn a penalty with just two minutes on the board. Unfortunately for the Romanians, their lineout wasn't quite so hot, overthrowing the jumper and losing their first possession in French territory.
While their scrum was going well, the worry for the Romanians was how easy France were making ground, with Wesley Fofana going clean through with his first touch.
Eventually France found themselves five metres out and when the Romanian defence sprinted up too quickly, it handed Morgan Parra an easy opportunity to open the scoring with a penalty in front.
However after a shaky start, Romania started to come into it, and when Adrian Apostol kicked through Brice Dulin was pressured on his own line, conceding a penalty which the Romanians kicked to the corner. While their maul was stopped, a series of drives stretched the French defence, opening things up for Florin Vlaicu to get over.
Unfortunately for the centre Bernard le Roux did brilliantly hold him up initially, before a pile of bodies obscured any potential touchdown. With penalty advantage Romania took the three points through their centre to level the scores after 20 minutes.
The Romanian pack was bossing their counterparts, with the French lineout in disarray and countless breakdown penalties as Romania threw bodies into rucks. After yet another turnover France strayed offside, giving the Oaks the chance to take the lead, only for Vlaicu to pull an easy chance wide.
While France had been struggling at everything else, their maul was at least functioning. After one such play Romania were forced to haul down the onrushing pack, with Paulica Ion sin-binned as a result.
Les Bleus went straight back to the maul, and while it didn't work, it opened up space on the blindside for Parra to put Guitoune into space. The winger had just enough strength to reach over and dot down. Parra's conversion from the touchline made it 10-3.
That try seemed to liberate France and they were over again two minutes later. After a searing break in midfield from Dulin, France recycled quickly. This time Uini Atonio burst through in midfield and with the Romanians scrambling, Alexandre Flanquart delayed his pass perfectly before putting Nyanga over on the right. Parra again added the extras from the touchline and suddenly it was a 17-3 lead.
Despite being down to 14, Romania kept battling, and created one chance when Catalin Fercu opened up some space for Apostol. He found his full-back again inside him but Guitoune was back in time to drag him into touch.
They were still causing France problems at the breakdown, and another turnover led to a penalty for slowing the ball down, with Vlaicu making no mistake this time to cut the deficit to 11 on the stroke of half-time.
The second half followed a similar pattern, with France still struggling at the breakdown but causing problems with their maul. They lacked patience however, with one little chip over the top from Parra clearly the wrong option with his team approaching the line.
Inaccurate and lethargic, France played into their opponents' hands by playing at a snail's pace, only raising the tempo in the final quarter of an hour.
When they did pick up the pace, Romania struggled to disrupt them at the breakdown, with one quick passage eventually sending Guitoune over for his second, showing power to force his way over. Parra again slotted the tricky conversion and France led 24-6 with 13 minutes left to get a bonus point.
It didn't take them long, with the Oaks starting to tire. After some more quick hands, France's offloading game finally clicking, Fofana spun out of two tackles and dotted down to seal the five points. Rory Kockott, on for Parra, added the conversion for les Bleus.
But quite rightly Romania got the try they deserved. Having failed to deal with the French maul all game, they showed they could do the same with Ursache, undoubtedly their best player, the man to crash over.
Guitoune almost had a hat-trick after an acrobatic finish following a chip over the top, but he couldn't quite get the ball down before running out of space in-goal.
There was still time for a fifth try, with Fickou showing his quick feet when running an excellent line, weaving through the defence and over for a simple score.
Man of the match: There had been question marks over his selection after a disappointing display against England in the warm-ups, but Sofiane Guitoune scored two tries and also stood up in defence with a couple of crucial tackles. There are tougher tests to come but he did as well as he could have.
Moment of the match: Florin Vlaicu came desperately close to the first try, getting over the line but being held up by Bernard le Roux and Sofiane Guitoune. With France wobbling, that try might just have sparked an upset.
Villain of the match: No nasty business to report.
Tries: Guitoune 2, Nyanga, Fofana, Fickou
Cons: Parra 3, Kockott 2
Try: V Ursache
Pens: Vlaicu 2
Yellow Card: Ion
France: 15 Brice Dulin, 14 Sofiane Guitoune, 13 Gaël Fickou, 12 Wesley Fofana, 11 Noa Nakaitaci, 10 Rémi Talès, 9 Morgan Parra, 8 Louis Picamoles, 7 Fulgence Ouedraogo, 6 Yannick Nyanga, 5 Alexandre Flanquart, 4 Bernard le Roux, 3 Uini Atonio, 2 Dimitri Szarzewski (c), 1 Vincent Debaty
Replacements: 16 Benjamin Kayser, 17 Eddy Ben Arous, 18 Nicolas Mas, 19 Yoann Maestri, 20 Damien Chouly, 21 Rory Kockott, 22 Frédéric Michalak, 23 Mathieu Bastareaud
Romania: 15 Catalin Fercu, 14 Madalin Lemnaru, 13 Paula Kinikinilau, 12 Florin Vlaicu, 11 Adrian Apostol, 10 Danut Dumbrava, 9 Florin Surugiu, 8 Mihai Macovei (c), 7 Viorel Lucaci, 6 Valentin Ursache, 5 Johan Van Heerden, 4 Valentin Poparlan, 3 Paulica Ion, 2 Otar Turashvili, 1 Mihaita Lazar
Replacements: 16 Andrei Radoi, 17 Andrei Ursache, 18 Horatiu Pungea, 19 Ovidiu Tonita, 20 Stelian Burcea, 21 Valentin Calafeteanu, 22 Ionut Botezatu, 23 Csaba Gal
Venue: Olympic Stadium, London
Referee: Jaco Peyper (South Africa)
Assistant Referees: Craig Joubert (South Africa), Federico Anselmi (Argentina)
TMO: George Ayoub (Australia)