Network coding is commonly used to improve the energy efficiency of network-wide broadcasting in wireless multi-hop networks. In this work, we focus on XOR-based broadcasting in mobile ad hoc networks with multiple sources. We make the observation that the common approach, which is to benefit from the synergy of XOR network coding with a CDS-based broadcast algorithm, suffers performance breakdowns. After delving into the details of this synergy, we attribute this behavior to an important mechanism of the underlying broadcast algorithm, known as the "termination criterion". To tackle the problem, we propose a termination criterion that is fully compatible with XOR coding. In addition to that, we revisit the internals of XOR coding. We first enhance the synergy of XOR coding with the underlying broadcast algorithm by allowing each mechanism to benefit from information available by the other. In this way, we manage to improve the pruning efficiency of the CDS-based algorithm while at the same time we come up with a method for detecting coding opportunities that has minimal storage and processing requirements compared to current approaches. Then, for the first time, we use XOR coding as a mechanism not only for enhancing energy efficiency but also for reducing the end-to-end-delay. We validate the effectiveness of our proposed algorithm through extensive simulations on a diverse set of scenarios.