2 months ago
999b49c- ensure_remote_file_cached no longer compares the per-file ETag against library.remote_revision() (which holds the openkara.db revision, not the asset file revision). The comparison never matched, causing every remote media/lyrics file to be re-downloaded on each playback. Now uses existence + size match, matching the previous behavior. - pull_remote_database_atomically sanitizes the provider revision before embedding it in the operation id (which becomes a temp filename). WebDAV ETags can contain quotes and W/ prefixes; other providers may return slashes. Characters outside [A-Za-z0-9._-] are replaced with underscores so the temp filename is always valid across platforms.
Parentc013390