Music screen: large playlists no longer empty it, and two logs say why things fail

Music screen: large playlists no longer empty it, and two logs say why things fail
Music screen
- The screen's list was turned down whole, and came up empty (the game's own
  Featured row too), once it held more than 1,024 songs: a few large YouTube
  Music, Spotify or local playlists went over that. The most is now 2,000
  songs and 16,384 places in playlists (music_ui_most_songs,
  music_ui_most_places); 2,000 because the screen's own table of songs is
  read only up to 2,048.
- The rows of the player's playlists are counted as they are registered and
  held under that: with no room left, the rest of a playlist is left out of
  its list (it still plays) and the screen is never empty for it.
- A row whose "artist - title" is longer than the screen takes is left out;
  one such row turned the whole list down as well.
- Said in the log: how many songs were left unlisted, and, should the list
  still be turned down, what it held.
Logs
- Spotify device: librespot's own warnings and errors are written at the
  warning level again; only the rest of what it says stays at debug. A
  player whose Spotify connects and stays silent had nothing to send.
- Multiplayer: a message turned down with "Join code, sender identity, or
  multiplayer protocol did not match" now says which of the three it was,
  its size and first bytes, and whether it came from a dedicated server.
This commit is contained in:
AyeZeeBB committed 2026-10-13 17:38:50 -05:00
1 parent 2e40aeb6e2
commit f356c1eafd
12 files changed
+191 -12

No files matched your search

+2
View File
@@ -8,6 +8,7 @@
#include "Extension/Settings/replay_guard.h"
#include "Extension/World/load_error_guard.h"
#include "Extension/World/mesh_unload_guard.h"
#include "Extension/World/shader_permutation_guard.h"
#include "Extension/World/stack_check_report.h"
#include "Extension/Music/music_inject.h"
#include "Extension/Music/spotify_web.h"
@@ -327,6 +328,7 @@ extern "C" __declspec(dllexport) BOOL WINAPI DingoSDKDebugInitialize() {
(void)dingosdk::engine_tweaks::install(r.base);
(void)dingosdk::replay_guard::install(r.base);
(void)dingosdk::mesh_unload_guard::install(r.base);
(void)dingosdk::shader_permutation_guard::install(r.base);
(void)dingosdk::load_error_guard::install(r.base);
(void)dingosdk::texture_handle_limit::install(r.base);
(void)dingosdk::stack_check_report::install(r.base);