Erreur d'arrondi qui plante objet_modifier et zappe le pipeline post_edition

J'ai un abonnements_offre à prix_ht=18.181818 taxe=0.1000 (ce qui donne 19.9999998 TTC)

Quand je le commande sur le site, il ne passe pas dans le pipeline abonnements_post_edition(), à cause visiblement d'un objet_modifier() qui plante à un moment à cause d'une erreur d'arrondi.

Dans /tmp/log/modifier.log j'ai ceci :

2024-04-04 18:25:45 192.168.112.6 (pid 10668) ecrire/inc/modifier.php:L272:objet_modifier_champs()::Pub:CRITIQUE: Erreur enregistrement en base abonnement/1 champs :array (
  'echeance_prix' => 
  array (
    'post' => '19.9999998',
    'save' => '20.000000',
  ),
)

Dans commandes_detail j'ai bien prix_ht=18.181818 taxe=0.1000 qui est enregistré.

Mais dans abonnement, j'ai echeance_prix=20.000000

L'erreur loggée par modifier.log vient d'ici :
https://git.spip.net/spip-contrib-extensions/abonnements/-/blob/master/action/editer_abonnement.php?ref_type=heads#L129

Modification effectuée par nicod