Think not just about safety but the flight.
Join the VS frequent flyer club, save the difference in fare and go with Virgin.
The seating is 2-4-2 so get yourself a nice pair of seats...
You can also pay a little extra on VS for seats with extra leg-room (1) and more again for exit row. (2)
I would go with (1) Pop a few snacks in your pocket, relax and enjoy!!
~ BA.. Much as I like the 747 in J / F it would not be my choice in Y ~ Old seating, often tired, with a 3-4-3 seating arrangement so you will probably have a stranger next to you. IF available, and not grabbed earlier by status card holders, the exit row( a pair) is also available for a fee, so might be worth considering....
Service on board... well the catering is probably similar and the crew can be great or otherwise on either.....