summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristophe Fergeau <cfergeau@redhat.com>2012-09-01 20:59:09 +0200
committerChristophe Fergeau <cfergeau@redhat.com>2012-09-06 19:58:38 +0200
commitdd99ea7c8efcc00522752a8fdc14aa479b9a0f2d (patch)
tree283177ba1ad7fb94168a3e8c7725ee5c4421bc34
parent28f0cc5814a8630c2eca51c0b655f0bcc9260dde (diff)
Zero-pad track number in %dn pattern
59fc2c6523f changed the "Number - Title" file pattern to use %dn instead of %tN. However, the track number is not 0-padded in %dn, which gives badly sorted tracks in some situations, and was the cause of several bug reports. This commit changes the %dn pattern to 0-pad the track number to restore things as they were when %tN was used. Let's hope there were not many users who preferred non-zero-padded filenames... https://bugzilla.gnome.org/show_bug.cgi?id=677865
-rw-r--r--data/sound-juicer.schemas.in4
-rw-r--r--src/sj-extracting.c6
2 files changed, 5 insertions, 5 deletions
diff --git a/data/sound-juicer.schemas.in b/data/sound-juicer.schemas.in
index e5697fd..038363a 100644
--- a/data/sound-juicer.schemas.in
+++ b/data/sound-juicer.schemas.in
@@ -124,8 +124,8 @@
%tC -- track composer (lowercase)
%tp -- track composer (sortable)
%tP -- track composer (sortable lowercase)
- %dn -- disc and track number (i.e Disk 2 - 6, or 6)
- %dN -- disc number, zero padded (i.e d02t06, or 06)
+ %dn -- disc and track number, track zero padded (i.e Disk 2 - 06, or 06)
+ %dN -- condensed disc and track number, zero padded (i.e d02t06, or 06)
</long>
</locale>
</schema>
diff --git a/src/sj-extracting.c b/src/sj-extracting.c
index 820e35c..4802d57 100644
--- a/src/sj-extracting.c
+++ b/src/sj-extracting.c
@@ -971,8 +971,8 @@ lower_sanitize_sortname (const char *sortname, const char *name,
* %tC -- track composer (lowercase)
* %tp -- track composer (sortable)
* %tP -- track composer (sortable lowercase)
- * %dn -- disc and track number (i.e Disk 2 - 6, or 6)
- * %dN -- disc number, zero padded (i.e d02t06, or 06)
+ * %dn -- disc and track number, track zero padded (i.e Disk 2 - 06, or 06)
+ * %dN -- condensed disc and track number, zero padded (i.e d02t06, or 06)
*/
char*
filepath_parse_pattern (const char* pattern, const TrackDetails *track)
@@ -1160,7 +1160,7 @@ filepath_parse_pattern (const char* pattern, const TrackDetails *track)
case 'n':
/* Disc and track number */
if (track->album->disc_number > 0) {
- char *s = g_strdup_printf ("Disc %d - %d", track->album->disc_number, track->number);
+ char *s = g_strdup_printf ("Disc %d - %02d", track->album->disc_number, track->number);
string = sanitize_path (s, filesystem_type); /* strip spaces if required */
g_free (s);
} else {