Bug 18097 - web issues using 5.20 dropdowns/file browsers not populating due to Compress::Raw::Zlib incompatibility
: web issues using 5.20 dropdowns/file browsers not populating due to Compress:...
Status: RESOLVED FIXED
Product: Logitech Media Server
Classification: Unclassified
Component: Web Interface
: 7.8.0
: PC Linux (other)
: -- normal (vote)
: 7.8.1
Assigned To: Michael Herger
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2014-06-06 14:26 UTC by Nygel
Modified: 2014-06-10 08:54 UTC (History)
1 user (show)

See Also:
Category: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Nygel 2014-06-06 14:26:12 UTC
I'm using Arch Linux and building LMS from this AUR package: https://aur.archlinux.org/packages/logitechmediaserver/

The issue manifests when using 5.20 as:
 - the player drop down being empty
 - volume not working correctly
 - tree browser in the wizard being blank.
 - browser will show jsonrpc.js errors "(failed) net::ERR_CONTENT_DECODING_FAILED"

The issue is the backend is attempting to gzip encode json content to pass back to the client but the resulting compressed data is invalid or corrupt so that the browser is unable to decode correctly.

The issue appears to be in JSONRPC.pm around line 270ish, disabling gzip compression resolves the issue.

LMS is using Compress::Raw::Zlib to do the work, the above AUR package uses 2.033 which is pulled from http://svn.slimdevices.com/repos/slim/7.8/trunk/vendor/CPAN/

(which I understand is an out of date repo but https://github.com/Logitech/slimserver-vendor/tree/public/7.8/CPAN also uses 2.033?)


Updating C:R:Z to 2.060 resolves the issue - I did not try any other versions.

But it looks like C:R:Z made core : http://perldoc.perl.org/index-modules-C.html

And with 5.20 deleting the module altogether does seem to resolve the issue, so the C:R:Z module does not appear to be required anymore.

I am not sure when C:R:Z made core (maybe 5.20 hence the recent issue) but perhaps just not installing the module if perl>=5.20 may be a solution?
Comment 1 Michael Herger 2014-06-06 14:37:03 UTC
Compress:Raw::Zlib has been part of perl core ever since v5.12. Let's remove it from our code for recent perl version. One less binary to build...

Do you know the arch package's maintainer? He should probably update his script.
Comment 2 Nygel 2014-06-06 14:48:02 UTC
Yeah I'm posting on the AUR package page, I think he will update when he's back from abroad.

In the meantime the easy fix is just to manually delete the perl modules if encountering issues and perl >=5.20

cheers!
Comment 3 Michael Herger 2014-06-10 08:51:11 UTC
Commit eceba6f9a35c529b1e28390324aad6a7f6b54304

Remove Compress::Raw::Zlib from any supporter Perl >= 5.12.
Comment 4 Nygel 2014-06-10 08:54:14 UTC
Thanks