Leonardo DiCaprio narrowly avoided losing his iconic role as Jack in Titanic after a row on-set with the film's director James Cameron.
The famous movie director, 68, recalled the fiery moment he almost fired Leo during the 1997 hit-movie's audition process.
He detailed threatening to send the then 20-something actor packing after he refused to take part in a vital part of production.
James, who also famously directed Avatar, had instructed Leo to take part in a chemistry screen test alongside his co-star Kate Winslet.
"He didn't know he was going to test," Cameron said. "He came in, he thought it was another meeting to meet Kate."
James told GQ: "I said, 'okay, we'll just go in the next room we'll run some lines and I'll video it.' And [Leo] said, 'you mean I'm reading?' and I said 'Yeah.' He said, 'I don't read.'
"And I said, 'Well,' and I shook his hand and I said, 'Thanks for coming by'." Leo reportedly responded: "Wait, wait, wait. You mean if I don't read, I don't get the part, just like that?"
James says he replied: "Oh, yeah, come on, this is a giant movie. It's going to take two years of my life and you'll be gone doing five other things while I'm doing post-production.
"All the model work and everything, so I'm not gonna f**k it up by making the wrong decision in casting, so you're gonna read or you're not gonna get the part."
It was after James' fiery rant that a rather reluctant young Leonardo agreed to take the screen test but maintained a "negative" attitude until James shouted "action" on set - when Leo 'dropped his ego'.
"Then he turned into Jack," James said. "Kate just lit up, and they played the scene. Dark clouds had opened up, and a ray of sun came down and lit up Jack. I’m like, 'All right. He’s the guy'."
Titanic quickly became one of the most successful films of all time, earning $2.2billion (£1.8bn) in the Box Office. It was later trumped by James' next success, Avatar, which made $2.9billion (£2.4bn).
Do you have a story to sell? Get in touch with us at webcelebs@mirror.co.uk or call us direct at 0207 29 33033.