In traffic safety applications for vehicular ad hoc networks (VANETs), emergency messages have to be disseminated quickly and extensively in order to inform as many vehicles as possible in a short period of time. Hence, the broadcast storm problem is prone to occur. In the past, several approaches have been proposed to solve the problem. Among them, we find counter-, distance-, location-, cluster-, and probabilistic-based schemes. In this paper, we analyze existing protocols and present a novel scheme that is designed to mitigate the broadcast storm problem, reduce the end-to-end latency in real urban scenarios, and deal with the faults that occur during transmission. The proposed routing protocol assigns a density adopted dynamic back-off time based on traffic flow theory to vehicle. It ensures the dissemination of the emergency message onto every part of the road, and when there is no relay vehicle, the emergency message will be retransmitted. We use the GrooveNet simulator to demonstrate that the proposed scheme has a low collision probability, low overhead and a short end-to-end latency.