Index: apps/playback.c
===================================================================
--- apps/playback.c	(wersja 12134)
+++ apps/playback.c	(kopia robocza)
@@ -73,6 +73,7 @@
 #include "splash.h"
 #include "talk.h"
 #include "ata_idle_notify.h"
+#include "scrobbler.h"
 
 #ifdef HAVE_RECORDING
 #include "recording.h"
@@ -3072,8 +3073,12 @@
         }
     }
 
-    if (new_playlist)
+    if (new_playlist) {
         ci.new_track = 0;
+        /* Log track info */
+        if (scrobbler_is_enabled())
+           scrobbler_change_event(&(CUR_TI->id3));
+    }
 
     /* If the playlist isn't that big */
     if (!playlist_check(ci.new_track))
@@ -3106,6 +3111,9 @@
         new_playlist = false;
     }
 
+    /* Log track info */
+    if (scrobbler_is_enabled())
+       scrobbler_change_event(&(CUR_TI->id3));
     /* Save the old track */
     prev_ti = CUR_TI;
 
@@ -3286,6 +3294,9 @@
     /* If we were playing, save resume information */
     if (playing)
     {
+        /* Log track info */
+        if (scrobbler_is_enabled())
+           scrobbler_change_event(&(CUR_TI->id3));
         /* Save the current playing spot, or NULL if the playlist has ended */
         playlist_update_resume_info(
             (playlist_end && ci.stop_codec)?NULL:audio_current_track());
Index: apps/scrobbler.c
===================================================================
--- apps/scrobbler.c	(wersja 12134)
+++ apps/scrobbler.c	(kopia robocza)
@@ -222,7 +222,7 @@
 
     scrobbler_cache = buffer_alloc(SCROBBLER_MAX_CACHE*SCROBBLER_CACHE_LEN);
 
-    audio_set_track_changed_event(&scrobbler_change_event);
+    //audio_set_track_changed_event(&scrobbler_change_event);
     cache_pos = 0;
     pending = false;
     scrobbler_initialised = true;
