At least 42 people are confirmed to have died in a fire aboard a bus in Zimbabwe late on Thursday.

The bus was near travelling near Beitbridge, close to the border with South Africa, when the blaze began.

The company that owned the vehicle, Brooklyn Buses, said it believed that a gas canister brought on board by a passenger may have caused the incident.

Many of the bodies were burnt beyond recognition and more than 20 survivors have been taken to hospital.

The driver, who survived the fire, said that he pulled over to the side of the road after detecting a "strange smell", a police spokeswoman told AFP news agency. When he turned on the lights to investigate, the bus burst into flames, she added.

Zimbabwe's President Emmerson Mnangagwa said he was "devastated" to hear of the incident, which comes a week after 47 people were killed in a bus collision in the east of the country.

He urged drivers to take extra care while on the roads.