private void OnTrackFinished(object o, AudioCdRipperTrackFinishedArgs args) { if (user_job == null || ripper == null) { return; } AudioCdTrackInfo track = (AudioCdTrackInfo)args.Track; ripped_duration += track.Duration; track.PrimarySource = ServiceManager.SourceManager.MusicLibrary; track.Uri = args.Uri; track.FileSize = Banshee.IO.File.GetSize(track.Uri); track.FileModifiedStamp = Banshee.IO.File.GetModifiedTime(track.Uri); track.LastSyncedStamp = DateTime.Now; using (var file = StreamTagger.ProcessUri(track.Uri)) { StreamTagger.TrackInfoMerge(track, file, true); } track.Save(); source.UnlockTrack(track); RipNextTrack(); }