aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/plugins/General/scrobbler/scrobbler.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/plugins/General/scrobbler/scrobbler.cpp b/src/plugins/General/scrobbler/scrobbler.cpp
index 8b251f354..905f3c425 100644
--- a/src/plugins/General/scrobbler/scrobbler.cpp
+++ b/src/plugins/General/scrobbler/scrobbler.cpp
@@ -141,7 +141,8 @@ void Scrobbler::setState(Qmmp::State state)
m_elapsed += m_time->elapsed();
m_elapsed /= 1000; //convert to seconds
- if((m_elapsed > 240) || (m_elapsed > int(m_song.length()/2) && m_song.length() > MIN_SONG_LENGTH))
+ if((m_elapsed > 240) || (m_elapsed > MIN_SONG_LENGTH && m_song.length() == 0) ||
+ (m_elapsed > int(m_song.length()/2) && m_song.length() > MIN_SONG_LENGTH))
{
m_cachedSongs << m_song;
m_cache->save(m_cachedSongs);
@@ -163,7 +164,8 @@ void Scrobbler::updateMetaData()
if(!m_song.metaData().isEmpty() && m_song.metaData() != metadata)
{
int elapsed = (m_elapsed + m_time->elapsed()) / 1000;
- if((elapsed > 240) || (elapsed > int(m_song.length()/2) && m_song.length() > MIN_SONG_LENGTH))
+ if((elapsed > 240) || (elapsed > MIN_SONG_LENGTH && m_song.length() == 0) ||
+ (elapsed > int(m_song.length()/2) && m_song.length() > MIN_SONG_LENGTH))
{
m_cachedSongs << m_song;
m_cache->save(m_cachedSongs);