ralphy wrote: 
> However, there is an issue with all the jive based clients where a timer
> variable wraps back to zero every 24 days +20:31 which causes
> squeezeplay to stop updating the watchdog shared memory semaphore which
> causes the watchdog to reboot the device.

This may be some kind of answer if unsigned 64 bit integers are
available, and don't kill performance:

Redefine -jive_jiffies- to be -Uint64- instead of -Uint32-. 
https://github.com/Logitech/squeezeplay/blob/7.8/src/squeezeplay_baby/src/common.h#L65
Systems that use -SDL_GetTicks()- won't get much benefit, because that's
only 32 bit unsigned milliseconds anyway. But systems that use
-clock_gettime- could gain.

Fix up -jiveL_get_ticks- to push appropriate unsigned value.
https://github.com/Logitech/squeezeplay/blob/public/7.8/src/squeezeplay/src/ui/jive_framework.c#L967
The lua number type in use on SqueezePlay is, I believe, a double float,
with 53 bits ? of integer precision, not 64, but that might be ok. It
ought to give us about 300,000 years instead of 24 days. It is a compile
time option.

Find out what breaks horribly, and on what platform. Rinse / repeat.

Just an idle thought, really. 64 bits is overkill, but 32 bits clearly
isn't enough. There may be a better way...


------------------------------------------------------------------------
mrw's Profile: http://forums.slimdevices.com/member.php?userid=38299
View this thread: http://forums.slimdevices.com/showthread.php?t=111663

_______________________________________________
Radio mailing list
Radio@lists.slimdevices.com
http://lists.slimdevices.com/mailman/listinfo/radio

Reply via email to