Bugzilla – Bug 8670
JIVE_DELETE_PLAYLIST needs to be split to two tokens
Last modified: 2009-07-31 10:24:15 UTC
The EN string for JIVE_DELETE_PLAYLIST has a %s wildcard in it, which works for the invocation of that token in Commands.pm, but not in Queries.pm. I think two strings may be necessary in 7.2 JIVE_DELETE_NAMED_PLAYLIST and JIVE_DELETE_PLAYLIST, for the two different contexts. I have a 7.1 workaround that I'll checkin to deal with the immediate problem without requiring any further translation updates.
7.1 change 21587 has a workaround for the bug. Needs proper handling in 7.2
punting to 7.3
The fix for this bug introduced in 21587 seems to have inadvertently broken the CLI command "playlists tracks". Whilst it is still possible to use this command using the CLI over TCP (but there will be an error in the Queries log) it completely breaks it using the JSON/RPC interface, causing the server to return an HTTP server error. The error from the Queries log is the same when using the JSON/RPC interface or the CLI: "Slim::Control::Request::execute (1792) Error: While trying to run function coderef [Slim::Control::Queries::playlistsTracksQuery]: [Can't call method "string" on an undefined value at /Users/luke/Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/Slim/Control/Queries.pm line 5194." My knowledge of Perl and the SqueezeCenter code base is basic at best however examining the code, it seems the problem is that the code is calling $request->client->string() whereas before it was calling $request->string(). The error message suggests that $request->client is null/undefined which makes sense as the "playlists tracks" API does not expect a player id to be specified. Reverting this changes fixes this issue however I expect the only fix needed is to use $request->string() instead of $request->client->string(). In the meantime, it is possible to work around this bug if you are using the JSON/RPC interface by specifying a player id in front of the command, so: <playerid> playlists tracks 0 100 playlist_id:1 works, but the following, as described in the CLI docs: playlists tracks 0 100 playlist_id:1 does not.
Good find! Please note that this shouldn't be a problem as long as you've connected a player. change 23117 fixes this behaviour.
I believe this bug has been fixed. Please reopen as necessary
This bug has been fixed in the 7.3.0 release version of SqueezeCenter! Please download the new version from http://www.slimdevices.com/su_downloads.html if you haven't already. If you are still experiencing this problem, feel free to reopen the bug with your new comments and we'll have another look.
Reduce number of active targets for SC