Bug 6865 - slimbrowser menus sent back incorrectly for certain multiple chunk menu requests
: slimbrowser menus sent back incorrectly for certain multiple chunk menu requests
Status: CLOSED FIXED
Product: SB Controller
Classification: Unclassified
Component: Browser
: unspecified
: Macintosh Other
: P1 normal (vote)
: 7.0
Assigned To: Michael Herger
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2008-01-30 07:48 UTC by Ben Klaas
Modified: 2009-09-08 09:14 UTC (History)
1 user (show)

See Also:
Category: ---


Attachments
patch to fix BMF and artists query using a common _fixCount() function (3.03 KB, patch)
2008-01-30 09:39 UTC, Michael Herger
Details | Diff
updated patch for this bug (6.54 KB, patch)
2008-01-30 10:39 UTC, Ben Klaas
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Ben Klaas 2008-01-30 07:48:04 UTC
scrolling can be locked up in certain slimbrowser menus, as described here:
http://forums.slimdevices.com/showthread.php?t=42873

we've isolated this to (certain) menus that need to request more than one chunk. In the current Jive code, that's any list > 200.

My guess is that my _playAll and _jiveAddToFavorites code in Queries.pm is causing the issue.

This needs fixing in 7.0. P1 issue.
Comment 1 Blackketter Dean 2008-01-30 08:52:27 UTC
Michael is looking at this...
Comment 2 Michael Herger 2008-01-30 09:39:03 UTC
Created attachment 2776 [details]
patch to fix BMF and artists query using a common _fixCount() function

Ben - that's just a snapshot before I'm off for supper. Feel free to give it a try. It should fix the two cases. Will add the rest later tonight or early tomorrow.
Comment 3 Ben Klaas 2008-01-30 09:52:47 UTC
Excellent, but not quite...I can scroll to the next-to-last item on the list and then the menu sticks. Looks like totalCount is off by one.

I'll see if I can fix that part right now.
Comment 4 Ben Klaas 2008-01-30 10:12:02 UTC
scratch the last comment...I applied a patch to an already hacked Queries.pm.

retesting now...
Comment 5 Ben Klaas 2008-01-30 10:39:37 UTC
Created attachment 2777 [details]
updated patch for this bug

Turns out I was incrementing $totalCount in _playAll() and that was throwing the count off.

This new patch eliminates any manipulation of the list count by _playAll and lets _fixCount do that work.

Give this one a try...works everywhere for me.
Comment 6 Michael Herger 2008-01-30 13:33:20 UTC
Jive change 1707 fixes the query base which used to be one too low, resulting in the 0*BLOCK_SIZE + BLOCK_SIZE element to be displayed twice
Comment 7 Ben Klaas 2008-01-30 13:42:03 UTC
"resulting in the 0*BLOCK_SIZE + BLOCK_SIZE element to be displayed twice"

I believe that should say "requested twice" not "displayed twice"

Those jive requests update the menu, and if it receives the same item a second time, it'll just overwrite it with an identical item. Your jive fix should result in a slight performance improvement, but it's actually nothing to do with the behavior in this bug (correct me if you feel differently on that).

We still need the patch, right? Have you tried it out? I will check it in if you think it's okay.
Comment 8 Michael Herger 2008-01-30 14:01:46 UTC
> I believe that should say "requested twice" not "displayed twice"

It is displayed twice. Tested on my Jive (watch out for album 200) and on the local soft Jive with chunk size set to 20.

> We still need the patch, right? Have you tried it out? I will check it in if
> you think it's okay.

Needs some more work. I'm almost done.
Comment 9 Michael Herger 2008-01-30 14:35:25 UTC
change 16992 - I think that should cover it. Happy testing! :-)
Comment 10 Michael Herger 2008-01-31 02:48:28 UTC
After some more playing I'd say this is fixed. 
Comment 11 James Richardson 2008-05-15 13:02:44 UTC
This bug has recently been fixed in the latest release of SqueezeCenter 7.0.1

Please try that version, if you still see the error, then reopen this bug.

To download this version, please navigate to: http://www.slimdevices.com/su_downloads.html