Citation: 6B_655/2024 E. 2

Au vu de ce qui précède, le recours doit être admis, le jugement attaqué annulé et la cause renvoyée à l'autorité précédente pour nouvelle décision au sens des considérants. Au vu du sort du recours, il n'y a pas lieu d'examiner les autres griefs soulevés par le recourant qui deviennent sans objet. Le recourant, qui obtient gain de cause, ne supporte pas de frais judiciaires (art. 66 al. 1 LTF). Il peut prétendre à une indemnité de dépens, à la charge du canton de Vaud. La demande d'assistance judiciaire devient ainsi sans objet (art. 64 al. 1 LTF). Il est statué sans frais. Par ces motifs, le Tribunal fédéral prononce :