Small correction on cuesheet support servicemp3.
authorchristophecvr <stefansat@telenet.be>
Sun, 12 Jul 2015 17:25:11 +0000 (19:25 +0200)
committerlittlesat <littlesat99@yahoo.com>
Sun, 12 Jul 2015 20:32:55 +0000 (22:32 +0200)
I noticed that if there was no cue file avbl and user did not insert a cut,
an empty cuts file was made on exit media.
With this patch there will be no empty cuts file made for nothing.
If there was a cuts file and the user removed all the cuts, the file will be removed as well.

modified:   lib/service/servicemp3.cpp

Signed-off-by: littlesat <littlesat99@yahoo.com>

lib/service/servicemp3.cpp

index 61ee5d8..f5528a9 100644 (file)
@@ -2849,6 +2849,10 @@ void eServiceMP3::saveCuesheet()
        if ((::access(filename.c_str(), R_OK) < 0) || m_use_chapter_entries)
                return;
 #endif
+       /* do not save to file if there are no cuts */
+       gboolean empty_cue = FALSE;
+       if(m_cue_entries.begin() == m_cue_entries.end())
+               empty_cue = TRUE;
 
        filename.append(".cuts");
 
@@ -2856,6 +2860,13 @@ void eServiceMP3::saveCuesheet()
 
        if (f)
        {
+               /* remove the cuts file if cue is empty */
+               if(empty_cue)
+               {
+                       fclose(f);
+                       remove(filename.c_str());
+                       return;
+               }
                unsigned long long where;
                int what;