Sherlock star Martin Freeman has revealed that he almost missed out on the role of Dr John Watson - because he was grumpy after someone stole his wallet on the way to his audition.

The Hobbit actor co-stars with Benedict Cumberbatch in the modern-day adaptation of Sherlock Holmes, which returns to BBC1 on New Year's Day.