<feed xmlns='http://www.w3.org/2005/Atom'>
<title>jellyfin/tests/Jellyfin.Server.Implementations.Tests/SyncPlay/PlayQueueManagerTests.cs, branch v12.0-rc4</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<id>https://git.b0n.dev/jellyfin/atom?h=v12.0-rc4</id>
<link rel='self' href='https://git.b0n.dev/jellyfin/atom?h=v12.0-rc4'/>
<link rel='alternate' type='text/html' href='https://git.b0n.dev/jellyfin/'/>
<updated>2026-07-04T09:38:05Z</updated>
<entry>
<title>Fix play queue index handling in SyncPlay</title>
<updated>2026-07-04T09:38:05Z</updated>
<author>
<name>Enea D'Angiò</name>
<email>enea.dangio162006@gmail.com</email>
</author>
<published>2026-07-03T09:14:11Z</published>
<link rel='alternate' type='text/html' href='https://git.b0n.dev/jellyfin/commit/?id=6883cd0969e40ad380d20b5b338c681767bc73f1'/>
<id>urn:sha1:6883cd0969e40ad380d20b5b338c681767bc73f1</id>
<content type='text'>
Three index bugs in PlayQueueManager, two of which leave
PlayingItemIndex out of bounds, making every subsequent Buffering/Ready
request throw and leaving the group unusable until it empties:

- RemoveFromPlaylist did not compensate for removed items preceding the
  playing item: removing the playing item together with earlier items
  could select the wrong item or crash with an out-of-bounds index.
- Next/Previous on an empty playlist with RepeatOne/RepeatAll reported
  success or set PlayingItemIndex to 0 on an empty list, crashing
  downstream in Group and corrupting the index.
- SetPlayingItemByIndex accepted an index equal to the playlist count
  (latent off-by-one, callers currently pre-validate).
</content>
</entry>
</feed>
