[Squeak-fr] durationToRun

Stéphane Rollandin hepta at zogotounga.net
Lun 15 Juin 07:32:54 UTC 2009


[3500 milliSeconds asDelay wait] durationToRun

donne 0:00:00:00.3501 sur Squeak3.10.2, mais donne le format correct 
0:00:00:03.5 sur Squeak3.8.2.

le problème vient de

Duration class>>
days: days hours: hours minutes: minutes seconds: seconds nanoSeconds: 
nanos	

  	^ self seconds: ((days * SecondsInDay)
	+ (hours * SecondsInHour)
	+ (minutes * SecondsInMinute)
	+ seconds)
		nanoSeconds: nanos


... qui est faux, car les nanoseconds ne participent pas au calcul des 
seconds.

la version précédente est:

days: days hours: hours minutes: minutes seconds: seconds nanoSeconds: nanos

  	^ self nanoSeconds:
	( ( (days * SecondsInDay)
	+ (hours * SecondsInHour)
	+ (minutes * SecondsInMinute)
	+ seconds ) * NanosInSecond )
	+ nanos.


et là ça marche.

Stef




Plus d'informations sur la liste de diffusion Squeak-fr