Summary: | Lyrics saved in "edit track details" are deleted | ||
---|---|---|---|
Product: | [Applications] amarok | Reporter: | LukasT <lukast.dev> |
Component: | general | Assignee: | Amarok Developers <amarok-bugs-dist> |
Status: | RESOLVED FIXED | ||
Severity: | grave | CC: | angavrilov, lfranchi, maximilian.kossick, mitchell |
Priority: | NOR | ||
Version: | 2.1 | ||
Target Milestone: | --- | ||
Platform: | Fedora RPMs | ||
OS: | Unspecified | ||
Latest Commit: | Version Fixed In: |
Description
LukasT
2009-06-04 15:28:44 UTC
SVN commit 979614 by nhnielsen: Don't overwrite cached lyrics if we get a "Not found" result when looking for lyrics. Instead use whatever is cached (if anything) Cached lyrics are still overwritten whenever a valid result is found, but what the correct behaviour is in this and many other cases (what to prefer, showing cached or fetched lyrics, when to overwrite cached lyrics, and whetther to search at all if cached lyrics are present) is up for discussion IMO. BUG: 195213 M +29 -2 context/LyricsManager.cpp M +1 -0 scriptengine/AmarokLyricsScript.cpp WebSVN link: http://websvn.kde.org/?view=rev&revision=979614 Hi, the fix is little crazy :) [ if ( lyrics != "Not found" ) ?] But thanks for it anyway. So let's discuss it a little: If you have something cached, use cache. If you don't have something in cache, try to download the lyrics to cache and use cache. Cached lyrics are still overwritten whenever a valid result is found is crazy. What if the datasource has bad lyrics and I have corrected them localy? Do you fetch lyrics from net everytime amarok plays song? I think you would save some traffic too :) And it is faster anyway to use cached lyrics. So with the new lyrics script the cached text is now being replaced with: Lyrics were not able to be downloaded. Please check your internet connection: Could not retrieve lyrics: TypeError: not an object I suggest that this bug be fixed as requested by the original submitter, i.e. amarok should not overwrite the cached text at all, unless the user explicitly presses the reload button. |