I've tracked down why Jivelite doesn't honour the Defeat destructive
Touch-To-Play setting in LMS.

Jivelite doesn't report the version-revision pair from controllerUA the
same as squeezeplay and 'causes this regex to fail'
(https://github.com/Logitech/slimserver/blob/public/7.9/Slim/Control/XMLBrowser.pm#L1927)
leaving $version and $revision empty so _defeatDestructiveTouchToPlay
always returns 0 regardless of the player setting.

Squeezeplay returns "SqueezePlay-squeezeplay/7.8.0-r1188 (i686)"
Jivelite returns "SqueezePlay-jivelite/0.1.0 (i686)"

AFAICT Jivelite was forked from squeezeplay after 7.6.0-r9337 so all
releases support the Defeat destructive Touch-To-Play feature.

When Triode created jivelite he choose to use a different version scheme
to be able to identify jivelite vs squeezeplay for applets written
specifically for it as the lua syntax was different; luajit vs lua 5.1. 
I was thinking of changing how jivelite reports it's version/revision
string to match the squeezeplay 7.x.0-rxxxxx format.  I can easily do
that at least for my builds which use the same lua 5.1 as squeezeplay
and will work for a wider range of LMS installations.

I've also attached a patch to LMS v7.9 and v8.0 that fixes the problem
by skipping the version check for a jivelite client in XML Browser.

I wanted to discuss both approaches before moving forward.

Thoughts?


Code:
--------------------
    --- a/Slim/Control/XMLBrowser.pm
  +++ b/Slim/Control/XMLBrowser.pm
  @@ -1926,8 +1926,10 @@ sub _defeatDestructiveTouchToPlay {
                if ($agent =~ /squeezeplay/i) {
                        my ($version, $revision) = ($agent =~ 
m%/(\d+(?:\.\d+)?)[.\d]*-r(\d+)%);
                        
  -                     return 0 if $version < 7.6;
  -                     return 0 if $version eq '7.6' && $revision < 9337;
  +                     if (!($agent =~ /jivelite/i)) {
  +                             return 0 if $version < 7.6;
  +                             return 0 if $version eq '7.6' && $revision < 
9337;
  +                     }
                }
        }
--------------------


+-------------------------------------------------------------------+
|Filename: JivelitedefeatDestructiveTouchToPlay.patch.txt           |
|Download: http://forums.slimdevices.com/attachment.php?attachmentid=30156|
+-------------------------------------------------------------------+


Ralphy

*1*-Touch, *5*-Classics, *3*-Booms, *1*-UE Radio
'Squeezebox client builds'
(https://sourceforge.net/projects/lmsclients/files/) 'donations'
(https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=LL5P6365KQEXN&lc=CA&item_name=Squeezebox%20client%20builds&currency_code=USD&bn=PP%2dDonationsBF%3abtn_donate_SM%2egif%3aNonHosted)
always appreciated.
------------------------------------------------------------------------
ralphy's Profile: http://forums.slimdevices.com/member.php?userid=3484
View this thread: http://forums.slimdevices.com/showthread.php?t=112071

_______________________________________________
plugins mailing list
[email protected]
http://lists.slimdevices.com/mailman/listinfo/plugins

Reply via email to