summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO6
-rw-r--r--PKGBUILD17
-rw-r--r--do-not-replace-dots.patch19
3 files changed, 35 insertions, 7 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 10ff76ef1457..94bc478b7110 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = id3-git
- pkgdesc = id3 mass tagger is a tool for listing and manipulating ID3 and Lyrics3 tags in multiple files.
+ pkgdesc = id3 mass tagger lists and manipulates ID3 and Lyrics3 tags in multiple files. Patched to avoid replacement of dot characters.
pkgver = r569.51e738e
- pkgrel = 1
+ pkgrel = 2
url = https://squell.github.io/id3/
arch = i686
arch = x86_64
@@ -11,7 +11,9 @@ pkgbase = id3-git
conflicts = id3
options = !makeflags
source = id3-git::git+https://github.com/squell/id3.git
+ source = do-not-replace-dots.patch
md5sums = SKIP
+ md5sums = 162c7882a19f45003e62013427bfea8c
pkgname = id3-git
diff --git a/PKGBUILD b/PKGBUILD
index aca41c52e92a..b895de5844e9 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -5,8 +5,8 @@
pkgname=id3-git
pkgver=r569.51e738e
-pkgrel=1
-pkgdesc="id3 mass tagger is a tool for listing and manipulating ID3 and Lyrics3 tags in multiple files."
+pkgrel=2
+pkgdesc="id3 mass tagger lists and manipulates ID3 and Lyrics3 tags in multiple files. Patched to avoid replacement of dot characters."
url="https://squell.github.io/id3/"
arch=('i686' 'x86_64')
license=('BSD')
@@ -14,13 +14,20 @@ depends=('gcc-libs')
makedepends=('git')
conflicts=('id3')
options=('!makeflags')
-source=("$pkgname::git+https://github.com/squell/id3.git")
-md5sums=('SKIP')
+source=("$pkgname::git+https://github.com/squell/id3.git"
+ "do-not-replace-dots.patch")
+md5sums=('SKIP'
+ '162c7882a19f45003e62013427bfea8c')
pkgver() {
cd "$pkgname"
printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
- }
+}
+
+prepare() {
+ cd "$pkgname"
+ patch -Np1 -i "${srcdir}/do-not-replace-dots.patch"
+}
build() {
cd "$pkgname"
diff --git a/do-not-replace-dots.patch b/do-not-replace-dots.patch
new file mode 100644
index 000000000000..0339f76933db
--- /dev/null
+++ b/do-not-replace-dots.patch
@@ -0,0 +1,19 @@
+diff --git a/setfname.cpp b/setfname.cpp
+index 6eac756..5ae89e1 100644
+--- a/setfname.cpp
++++ b/setfname.cpp
+@@ -65,14 +65,8 @@ bool file::vmodify(const char* fname, const function& edit) const
+ }
+
+ string name = edited;
+- int dot = 1;
+ for(string::iterator p = name.end()-1; p != name.begin()-1; --p) {
+ if(!portable_fn(*p)) *p = '_'; // replace ill. chars
+- if(*p == '.') {
+- if(dot-- <= 0) {
+- *p = '_';
+- }
+- }
+ }
+ if(const char* psep = strrchr(fname, '/')) {
+ name.insert(0, fname, psep-fname+1); // copy path prefix