summaryrefslogtreecommitdiff
path: root/dev-java/jid3
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
commit8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch)
tree7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /dev-java/jid3
parent30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff)
gentoo resync : 14.07.2018
Diffstat (limited to 'dev-java/jid3')
-rw-r--r--dev-java/jid3/Manifest5
-rw-r--r--dev-java/jid3/files/0.46-javadoc.patch11
-rw-r--r--dev-java/jid3/files/0.46-tests-and-unicode.patch179
-rw-r--r--dev-java/jid3/jid3-0.46-r2.ebuild59
-rw-r--r--dev-java/jid3/metadata.xml13
5 files changed, 267 insertions, 0 deletions
diff --git a/dev-java/jid3/Manifest b/dev-java/jid3/Manifest
new file mode 100644
index 000000000000..58be3c0e263f
--- /dev/null
+++ b/dev-java/jid3/Manifest
@@ -0,0 +1,5 @@
+AUX 0.46-javadoc.patch 521 BLAKE2B a185db564d999096252bfc0f382d116b023b45d794083c038127c3d85a8b7bba6fbb0df9243d74b4955fa4ef1fc8d0813de9dcbb50bc63efa5a9612a98a9c70c SHA512 88a57f0c15f1915ac072bec7d420bf8a9eb1ca199175d56828f5439958f474b62d33f49a2eddcbcc01bb39dd07a22febccbfa58aa95be5e6b5413c54b94bca48
+AUX 0.46-tests-and-unicode.patch 17518 BLAKE2B c484cad7507d1b6c3c41d04a100102161d0f3f2cc2c9e64a636f11b61a927fc95e511ca38d4974fa05a34708268d9f6a16a739d57778c72776d78581b484aeca SHA512 d1448b2474af1d404999d1ac1df126814405840d8d80074ec90b7f4e2506a6d3497e2b6defa8c9c04b6fb7d86d815aec7dc3b7d7455f5fde41ade590db4452ff
+DIST jid3_0.46.tar.gz 972609 BLAKE2B f04e2055eeac530ae5256e43ea1cca2d528ee6b3027d43234c60be5150103212cecb68da5f1d6081462a9f215223f4b4377932b77c72b4de1c8dc816603cc9ea SHA512 478a78601613ab0e7965145733f1adec10005ef8069deb0595880feb47b065573d66cb5eb2b810869970a6b0272f8fb3363e4946ba5737ad740e372875cfa707
+EBUILD jid3-0.46-r2.ebuild 1269 BLAKE2B 7fc86e6aae3c11fad0c1c399be46bfb141495e871eeb7f913b15f7912a3ce547f4027afb1ab0b16ca79cbb5c9a05ecba1157bd0bd7e3be5efd64dda7a039b004 SHA512 0babc2575e023d689564d0385805408e489ac5a25cc408e5f37e40bc43870bbd7eca887dd9d4afdaa84350a35aa287c2e85de6610babae041211cf44ea827134
+MISC metadata.xml 458 BLAKE2B e62d6ad7013a3437846647124bed30d2332dd2fa35a8fca6e179f6ecf5282d4c5ba6f2b02299d3936d9c8c596a1f2c60005cdd35f60f87a3148c95f80af0649e SHA512 8dbbc0044f192093b672832681e521d55ff3ea2b3f3c74975cb493b0192c03f76279caf358f702449589d8d836a0b035c590c1fd4e0efc450740b354727fdc1b
diff --git a/dev-java/jid3/files/0.46-javadoc.patch b/dev-java/jid3/files/0.46-javadoc.patch
new file mode 100644
index 000000000000..8a17f1de73bb
--- /dev/null
+++ b/dev-java/jid3/files/0.46-javadoc.patch
@@ -0,0 +1,11 @@
+diff -ur nbproject.old/build-impl.xml nbproject/build-impl.xml
+--- nbproject.old/build-impl.xml 2007-05-05 13:32:49.000000000 +0300
++++ nbproject/build-impl.xml 2007-05-05 13:32:56.000000000 +0300
+@@ -343,7 +343,6 @@
+ <sourcepath>
+ <pathelement location="${src.dir}"/>
+ </sourcepath>
+- <fileset dir="${src.dir}"/>
+ </javadoc>
+ </target>
+ <target name="-javadoc-browse" if="netbeans.home" unless="no.javadoc.preview" depends="init,-javadoc-build">
diff --git a/dev-java/jid3/files/0.46-tests-and-unicode.patch b/dev-java/jid3/files/0.46-tests-and-unicode.patch
new file mode 100644
index 000000000000..1453cb38b996
--- /dev/null
+++ b/dev-java/jid3/files/0.46-tests-and-unicode.patch
@@ -0,0 +1,179 @@
+--- src/org/blinkenlights/jid3/io/TextEncoding.java 2008-05-27 11:23:03.000000000 -0700
++++ src/org/blinkenlights/jid3/io/TextEncoding.java 2008-05-26 10:39:01.000000000 -0700
+@@ -91,7 +91,7 @@
+ case (byte)0x00:
+ return "ISO-8859-1";
+ case (byte)0x01:
+- return "Unicode";
++ return "UTF-16";
+ default:
+ return null; // can't happen because we control construction of this object
+ }
+--- src/org/blinkenlights/jid3/test/AllTests.java 2008-05-27 11:23:03.000000000 -0700
++++ src/org/blinkenlights/jid3/test/AllTests.java 2008-05-27 11:11:32.000000000 -0700
+@@ -44,7 +44,7 @@
+ public class AllTests extends TestCase
+ {
+ // set root path for testing, so tests can find the test files
+- public static String s_RootPath = "c:/work/jid3/test_data/";
++ public static String s_RootPath = "./test_data/";
+
+ public static void main(String[] args)
+ {
+@@ -134,7 +134,7 @@
+ }
+
+ // a 'visit list' was created by our visitor, recording which frames were visited, so we can compare
+- if ( ! oTestID3Visitor.getVisitList().equals("3=DS+uw_PsKMr(VT$ICBUtvNyEzRL)W[QJO6*-"))
++ if ( ! oTestID3Visitor.getVisitList().equals("3rstuvwyzBCDEIJKLMNOPQRSTUVW$()_=+[6*-"))
+ {
+ fail("Unexpected resulting visit list: " + oTestID3Visitor.getVisitList());
+ }
+--- src/org/blinkenlights/jid3/test/ID3V2Test.java 2008-05-27 11:23:03.000000000 -0700
++++ src/org/blinkenlights/jid3/test/ID3V2Test.java 2008-05-26 10:39:01.000000000 -0700
+@@ -540,7 +540,7 @@
+ oTALB.setTextEncoding(TextEncoding.UNICODE);
+ oID3V2_3_0Tag.setTALBTextInformationFrame(oTALB);
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>ATALB<bh:00><bh:00><bh:00>7<bh:00><bh:00><bh:01><bh:ff><bh:fe>a<bh:00>b<bh:00>c<bh:00>d<bh:00>e<bh:00>f<bh:00>g<bh:00>h<bh:00>i<bh:00>j<bh:00>k<bh:00>l<bh:00>m<bh:00>n<bh:00>o<bh:00>p<bh:00>q<bh:00>r<bh:00>s<bh:00>t<bh:00>u<bh:00>v<bh:00>w<bh:00>x<bh:00>y<bh:00>z<bh:00>";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>ATALB<bh:00><bh:00><bh:00>7<bh:00><bh:00><bh:01><bh:fe><bh:ff><bh:00>a<bh:00>b<bh:00>c<bh:00>d<bh:00>e<bh:00>f<bh:00>g<bh:00>h<bh:00>i<bh:00>j<bh:00>k<bh:00>l<bh:00>m<bh:00>n<bh:00>o<bh:00>p<bh:00>q<bh:00>r<bh:00>s<bh:00>t<bh:00>u<bh:00>v<bh:00>w<bh:00>x<bh:00>y<bh:00>z";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -744,7 +744,7 @@
+ oTIME.setTextEncoding(TextEncoding.UNICODE);
+ oID3V2_3_0Tag.setTIMETextInformationFrame(oTIME);
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00><bh:15>TIME<bh:00><bh:00><bh:00><bh:0b><bh:00><bh:00><bh:01><bh:ff><bh:fe>0<bh:00>8<bh:00>0<bh:00>5<bh:00>";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00><bh:15>TIME<bh:00><bh:00><bh:00><bh:0b><bh:00><bh:00><bh:01><bh:fe><bh:ff><bh:00>0<bh:00>8<bh:00>0<bh:00>5";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -1258,7 +1258,7 @@
+ oTXXX = new TXXXTextInformationID3V2Frame("description2", "information2");
+ oID3V2_3_0Tag.addTXXXTextInformationFrame(oTXXX);
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>aTXXX<bh:00><bh:00><bh:00>3<bh:00><bh:00><bh:01><bh:ff><bh:fe>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>i<bh:00>o<bh:00>n<bh:00><bh:00><bh:00><bh:ff><bh:fe>i<bh:00>n<bh:00>f<bh:00>o<bh:00>r<bh:00>m<bh:00>a<bh:00>t<bh:00>i<bh:00>o<bh:00>n<bh:00>TXXX<bh:00><bh:00><bh:00><bh:1a><bh:00><bh:00><bh:00>description2<bh:00>information2";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>aTXXX<bh:00><bh:00><bh:00>3<bh:00><bh:00><bh:01><bh:fe><bh:ff><bh:00>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>i<bh:00>o<bh:00>n<bh:00><bh:00><bh:fe><bh:ff><bh:00>i<bh:00>n<bh:00>f<bh:00>o<bh:00>r<bh:00>m<bh:00>a<bh:00>t<bh:00>i<bh:00>o<bh:00>nTXXX<bh:00><bh:00><bh:00><bh:1a><bh:00><bh:00><bh:00>description2<bh:00>information2";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -1464,7 +1464,7 @@
+ oWXXX = new WXXXUrlLinkID3V2Frame("another description", "http://www.grebenc.ca");
+ oID3V2_3_0Tag.addWXXXUrlLinkFrame(oWXXX);
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>vWXXX<bh:00><bh:00><bh:00>*<bh:00><bh:00><bh:00>another description<bh:00>http://www.grebenc.caWXXX<bh:00><bh:00><bh:00>8<bh:00><bh:00><bh:01><bh:ff><bh:fe>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>i<bh:00>o<bh:00>n<bh:00><bh:00><bh:00>http://jid3.blinkenlights.org";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>vWXXX<bh:00><bh:00><bh:00>*<bh:00><bh:00><bh:00>another description<bh:00>http://www.grebenc.caWXXX<bh:00><bh:00><bh:00>8<bh:00><bh:00><bh:01><bh:fe><bh:ff><bh:00>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>i<bh:00>o<bh:00>n<bh:00><bh:00>http://jid3.blinkenlights.org";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -1519,7 +1519,7 @@
+ oID3V2_3_0Tag.addAPICFrame(oAPIC);
+ oID3V2_3_0Tag.addAPICFrame(new APICID3V2Frame("image/jpeg", APICID3V2Frame.PictureType.FrontCover, "Front cover.", new byte[] { 0x05, 0x04, 0x03, 0x02, 0x01 }));
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>bAPIC<bh:00><bh:00><bh:00>/<bh:00><bh:00><bh:01>image/png<bh:00><bh:08><bh:ff><bh:fe>A<bh:00>r<bh:00>t<bh:00>i<bh:00>s<bh:00>t<bh:00> <bh:00>i<bh:00>m<bh:00>a<bh:00>g<bh:00>e<bh:00>.<bh:00><bh:00><bh:00><bh:01><bh:02><bh:03><bh:04><bh:05>APIC<bh:00><bh:00><bh:00><bh:1f><bh:00><bh:00><bh:00>image/jpeg<bh:00><bh:03>Front cover.<bh:00><bh:05><bh:04><bh:03><bh:02><bh:01>";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>bAPIC<bh:00><bh:00><bh:00>/<bh:00><bh:00><bh:01>image/png<bh:00><bh:08><bh:fe><bh:ff><bh:00>A<bh:00>r<bh:00>t<bh:00>i<bh:00>s<bh:00>t<bh:00> <bh:00>i<bh:00>m<bh:00>a<bh:00>g<bh:00>e<bh:00>.<bh:00><bh:00><bh:01><bh:02><bh:03><bh:04><bh:05>APIC<bh:00><bh:00><bh:00><bh:1f><bh:00><bh:00><bh:00>image/jpeg<bh:00><bh:03>Front cover.<bh:00><bh:05><bh:04><bh:03><bh:02><bh:01>";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -1556,7 +1556,7 @@
+ oID3V2_3_0Tag.addCOMMFrame(oCOMM);
+ oID3V2_3_0Tag.addCOMMFrame(new COMMID3V2Frame("rus", "next description", "next actual text"));
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>{COMM<bh:00><bh:00><bh:00>B<bh:00><bh:00><bh:01>eng<bh:ff><bh:fe>s<bh:00>h<bh:00>o<bh:00>r<bh:00>t<bh:00> <bh:00>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>i<bh:00>o<bh:00>n<bh:00><bh:00><bh:00><bh:ff><bh:fe>a<bh:00>c<bh:00>t<bh:00>u<bh:00>a<bh:00>l<bh:00> <bh:00>t<bh:00>e<bh:00>x<bh:00>t<bh:00>COMM<bh:00><bh:00><bh:00>%<bh:00><bh:00><bh:00>rusnext description<bh:00>next actual text";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>{COMM<bh:00><bh:00><bh:00>B<bh:00><bh:00><bh:01>eng<bh:fe><bh:ff><bh:00>s<bh:00>h<bh:00>o<bh:00>r<bh:00>t<bh:00> <bh:00>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>i<bh:00>o<bh:00>n<bh:00><bh:00><bh:fe><bh:ff><bh:00>a<bh:00>c<bh:00>t<bh:00>u<bh:00>a<bh:00>l<bh:00> <bh:00>t<bh:00>e<bh:00>x<bh:00>tCOMM<bh:00><bh:00><bh:00>%<bh:00><bh:00><bh:00>rusnext description<bh:00>next actual text";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -1605,7 +1605,7 @@
+ oCOMR.setTextEncoding(TextEncoding.UNICODE);
+ oID3V2_3_0Tag.setCOMRFrame(oCOMR);
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>tCOMR<bh:00><bh:00><bh:00>j<bh:00><bh:00><bh:01>cad12.99<bh:00>25250101http://jid3.blinkenlights.org<bh:00><bh:03><bh:ff><bh:fe>s<bh:00>e<bh:00>l<bh:00>l<bh:00>e<bh:00>r<bh:00><bh:00><bh:00><bh:ff><bh:fe>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>i<bh:00>o<bh:00>n<bh:00><bh:00><bh:00>image/png<bh:00><bh:01><bh:02><bh:03><bh:04><bh:05>";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>tCOMR<bh:00><bh:00><bh:00>j<bh:00><bh:00><bh:01>cad12.99<bh:00>25250101http://jid3.blinkenlights.org<bh:00><bh:03><bh:fe><bh:ff><bh:00>s<bh:00>e<bh:00>l<bh:00>l<bh:00>e<bh:00>r<bh:00><bh:00><bh:fe><bh:ff><bh:00>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>i<bh:00>o<bh:00>n<bh:00><bh:00>image/png<bh:00><bh:01><bh:02><bh:03><bh:04><bh:05>";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -1717,7 +1717,7 @@
+ oGEOB = new GEOBID3V2Frame("image/jpeg", "filename2", "another content description", new byte[] { 0x05, 0x04, 0x03, 0x02, 0x01 });
+ oID3V2_3_0Tag.addGEOBFrame(oGEOB);
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:01><bh:19>GEOB<bh:00><bh:00><bh:00>7<bh:00><bh:00><bh:00>image/jpeg<bh:00>filename2<bh:00>another content description<bh:00><bh:05><bh:04><bh:03><bh:02><bh:01>GEOB<bh:00><bh:00><bh:00>N<bh:00><bh:00><bh:01>image/png<bh:00><bh:ff><bh:fe>f<bh:00>i<bh:00>l<bh:00>e<bh:00>n<bh:00>a<bh:00>m<bh:00>e<bh:00><bh:00><bh:00><bh:ff><bh:fe>c<bh:00>o<bh:00>n<bh:00>t<bh:00>e<bh:00>n<bh:00>t<bh:00> <bh:00>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>i<bh:00>o<bh:00>n<bh:00><bh:00><bh:00><bh:01><bh:02><bh:03><bh:04><bh:05>";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:01><bh:19>GEOB<bh:00><bh:00><bh:00>7<bh:00><bh:00><bh:00>image/jpeg<bh:00>filename2<bh:00>another content description<bh:00><bh:05><bh:04><bh:03><bh:02><bh:01>GEOB<bh:00><bh:00><bh:00>N<bh:00><bh:00><bh:01>image/png<bh:00><bh:fe><bh:ff><bh:00>f<bh:00>i<bh:00>l<bh:00>e<bh:00>n<bh:00>a<bh:00>m<bh:00>e<bh:00><bh:00><bh:fe><bh:ff><bh:00>c<bh:00>o<bh:00>n<bh:00>t<bh:00>e<bh:00>n<bh:00>t<bh:00> <bh:00>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>i<bh:00>o<bh:00>n<bh:00><bh:00><bh:01><bh:02><bh:03><bh:04><bh:05>";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -1779,7 +1779,7 @@
+ oIPLS.setTextEncoding(TextEncoding.UNICODE);
+ oID3V2_3_0Tag.setIPLSFrame(oIPLS);
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:01><bh:15>IPLS<bh:00><bh:00><bh:00><bh:8b><bh:00><bh:00><bh:01><bh:ff><bh:fe>i<bh:00>n<bh:00>v<bh:00>o<bh:00>l<bh:00>v<bh:00>e<bh:00>m<bh:00>e<bh:00>n<bh:00>t<bh:00>1<bh:00><bh:00><bh:00><bh:ff><bh:fe>p<bh:00>e<bh:00>r<bh:00>s<bh:00>o<bh:00>n<bh:00>1<bh:00><bh:00><bh:00><bh:ff><bh:fe>i<bh:00>n<bh:00>v<bh:00>o<bh:00>l<bh:00>v<bh:00>e<bh:00>m<bh:00>e<bh:00>n<bh:00>t<bh:00>1<bh:00><bh:00><bh:00><bh:ff><bh:fe>p<bh:00>e<bh:00>r<bh:00>s<bh:00>o<bh:00>n<bh:00>2<bh:00><bh:00><bh:00><bh:ff><bh:fe>i<bh:00>n<bh:00>v<bh:00>o<bh:00>l<bh:00>v<bh:00>e<bh:00>m<bh:00>e<bh:00>n<bh:00>t<bh:00>2<bh:00><bh:00><bh:00><bh:ff><bh:fe>p<bh:00>e<bh:00>r<bh:00>s<bh:00>o<bh:00>n<bh:00>3<bh:00><bh:00><bh:00>";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:01><bh:15>IPLS<bh:00><bh:00><bh:00><bh:8b><bh:00><bh:00><bh:01><bh:fe><bh:ff><bh:00>i<bh:00>n<bh:00>v<bh:00>o<bh:00>l<bh:00>v<bh:00>e<bh:00>m<bh:00>e<bh:00>n<bh:00>t<bh:00>1<bh:00><bh:00><bh:fe><bh:ff><bh:00>p<bh:00>e<bh:00>r<bh:00>s<bh:00>o<bh:00>n<bh:00>1<bh:00><bh:00><bh:fe><bh:ff><bh:00>i<bh:00>n<bh:00>v<bh:00>o<bh:00>l<bh:00>v<bh:00>e<bh:00>m<bh:00>e<bh:00>n<bh:00>t<bh:00>1<bh:00><bh:00><bh:fe><bh:ff><bh:00>p<bh:00>e<bh:00>r<bh:00>s<bh:00>o<bh:00>n<bh:00>2<bh:00><bh:00><bh:fe><bh:ff><bh:00>i<bh:00>n<bh:00>v<bh:00>o<bh:00>l<bh:00>v<bh:00>e<bh:00>m<bh:00>e<bh:00>n<bh:00>t<bh:00>2<bh:00><bh:00><bh:fe><bh:ff><bh:00>p<bh:00>e<bh:00>r<bh:00>s<bh:00>o<bh:00>n<bh:00>3<bh:00><bh:00>";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -1871,7 +1871,7 @@
+ oOWNE.setTextEncoding(TextEncoding.UNICODE);
+ oID3V2_3_0Tag.setOWNEFrame(oOWNE);
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>*OWNE<bh:00><bh:00><bh:00> <bh:00><bh:00><bh:01>cad12.34<bh:00>20000102<bh:ff><bh:fe>s<bh:00>e<bh:00>l<bh:00>l<bh:00>e<bh:00>r<bh:00>";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>*OWNE<bh:00><bh:00><bh:00> <bh:00><bh:00><bh:01>cad12.34<bh:00>20000102<bh:fe><bh:ff><bh:00>s<bh:00>e<bh:00>l<bh:00>l<bh:00>e<bh:00>r";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -2063,7 +2063,7 @@
+ oSYLT.addSyncEntry(new SYLTID3V2Frame.SyncEntry("def", 5));
+ oID3V2_3_0Tag.addSYLTFrame(oSYLT);
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:01><bh:1a>SYLT<bh:00><bh:00><bh:00><bh:5c><bh:00><bh:00><bh:01>eng<bh:02><bh:01><bh:ff><bh:fe>c<bh:00>o<bh:00>n<bh:00>t<bh:00>e<bh:00>n<bh:00>t<bh:00> <bh:00>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>o<bh:00>r<bh:00><bh:00><bh:00><bh:ff><bh:fe>o<bh:00>n<bh:00>e<bh:00><bh:00><bh:00><bh:00><bh:00><bh:00><bh:01><bh:ff><bh:fe>t<bh:00>w<bh:00>o<bh:00><bh:00><bh:00><bh:00><bh:00><bh:00><bh:02><bh:ff><bh:fe>t<bh:00>h<bh:00>r<bh:00>e<bh:00>e<bh:00><bh:00><bh:00><bh:00><bh:00><bh:00><bh:03>SYLT<bh:00><bh:00><bh:00>*<bh:00><bh:00><bh:00>rus<bh:01><bh:06>another description<bh:00>abc<bh:00><bh:00><bh:00><bh:00><bh:04>def<bh:00><bh:00><bh:00><bh:00><bh:05>";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:01><bh:1a>SYLT<bh:00><bh:00><bh:00><bh:5c><bh:00><bh:00><bh:01>eng<bh:02><bh:01><bh:fe><bh:ff><bh:00>c<bh:00>o<bh:00>n<bh:00>t<bh:00>e<bh:00>n<bh:00>t<bh:00> <bh:00>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>o<bh:00>r<bh:00><bh:00><bh:fe><bh:ff><bh:00>o<bh:00>n<bh:00>e<bh:00><bh:00><bh:00><bh:00><bh:00><bh:01><bh:fe><bh:ff><bh:00>t<bh:00>w<bh:00>o<bh:00><bh:00><bh:00><bh:00><bh:00><bh:02><bh:fe><bh:ff><bh:00>t<bh:00>h<bh:00>r<bh:00>e<bh:00>e<bh:00><bh:00><bh:00><bh:00><bh:00><bh:03>SYLT<bh:00><bh:00><bh:00>*<bh:00><bh:00><bh:00>rus<bh:01><bh:06>another description<bh:00>abc<bh:00><bh:00><bh:00><bh:00><bh:04>def<bh:00><bh:00><bh:00><bh:00><bh:05>";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -2141,7 +2141,7 @@
+ oUSER.setTextEncoding(TextEncoding.UNICODE);
+ oID3V2_3_0Tag.setUSERFrame(oUSER);
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>*USER<bh:00><bh:00><bh:00> <bh:00><bh:00><bh:01>eng<bh:ff><bh:fe>T<bh:00>e<bh:00>r<bh:00>m<bh:00>s<bh:00> <bh:00>o<bh:00>f<bh:00> <bh:00>u<bh:00>s<bh:00>e<bh:00>.<bh:00>";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>*USER<bh:00><bh:00><bh:00> <bh:00><bh:00><bh:01>eng<bh:fe><bh:ff><bh:00>T<bh:00>e<bh:00>r<bh:00>m<bh:00>s<bh:00> <bh:00>o<bh:00>f<bh:00> <bh:00>u<bh:00>s<bh:00>e<bh:00>.";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -2177,7 +2177,7 @@
+ oUSLT.setTextEncoding(TextEncoding.UNICODE);
+ oID3V2_3_0Tag.addUSLTFrame(oUSLT);
+
+- String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>DUSLT<bh:00><bh:00><bh:00>:<bh:00><bh:00><bh:01>eng<bh:ff><bh:fe>c<bh:00>o<bh:00>n<bh:00>t<bh:00>e<bh:00>n<bh:00>t<bh:00> <bh:00>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>o<bh:00>r<bh:00><bh:00><bh:00><bh:ff><bh:fe>l<bh:00>y<bh:00>r<bh:00>i<bh:00>c<bh:00>s<bh:00>";
++ String sPrefix = "ID3<bh:03><bh:00><bh:00><bh:00><bh:00><bh:00>DUSLT<bh:00><bh:00><bh:00>:<bh:00><bh:00><bh:01>eng<bh:fe><bh:ff><bh:00>c<bh:00>o<bh:00>n<bh:00>t<bh:00>e<bh:00>n<bh:00>t<bh:00> <bh:00>d<bh:00>e<bh:00>s<bh:00>c<bh:00>r<bh:00>i<bh:00>p<bh:00>t<bh:00>o<bh:00>r<bh:00><bh:00><bh:fe><bh:ff><bh:00>l<bh:00>y<bh:00>r<bh:00>i<bh:00>c<bh:00>s";
+
+ runTagVerifyTest(oID3V2_3_0Tag, sPrefix);
+ }
+@@ -2599,7 +2599,7 @@
+ ID3Tag.useStrict(false);
+ try
+ {
+- File oSourceDir = new File("c:/temp/mp3");
++ File oSourceDir = new File("test_data");
+ recurseDirectoryForMP3s(oSourceDir);
+ }
+ catch (Exception e)
+--- src/org/blinkenlights/jid3/v2/ID3V2Tag.java 2008-05-27 11:23:03.000000000 -0700
++++ src/org/blinkenlights/jid3/v2/ID3V2Tag.java 2008-05-27 11:09:51.000000000 -0700
+@@ -50,7 +50,7 @@
+ protected boolean m_bCRCDataFlag;
+
+ /** Mapping from frame ID to list containing frames. For frames that can only be used once. */
+- protected Map m_oFrameIdToFrameMap = null;
++ protected SortedMap m_oFrameIdToFrameMap = null;
+
+ /** Default padding for ID3 v2 frames, if not specified. 16 bytes, because Winamp does not read the last
+ * frame when there isn't at least 6 bytes of padding following it in a tag. */
+@@ -72,7 +72,7 @@
+ m_bUnsynchronizationUsedFlag = bUnsynchronizationUsedFlag;
+ m_bExtendedHeaderFlag = bExtendedHeaderFlag;
+ m_bExperimentalFlag = bExperimentalFlag;
+- m_oFrameIdToFrameMap = new HashMap();
++ m_oFrameIdToFrameMap = new TreeMap();
+ //HACK: Default padding of 16 bytes, because Winamp doesn't seem to see the last frame in a v2 tag
+ // when there is less than 6 bytes of padding. (???)
+ m_iPaddingLength = s_iDefaultPaddingLength;
diff --git a/dev-java/jid3/jid3-0.46-r2.ebuild b/dev-java/jid3/jid3-0.46-r2.ebuild
new file mode 100644
index 000000000000..f50f2e94610f
--- /dev/null
+++ b/dev-java/jid3/jid3-0.46-r2.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+JAVA_PKG_IUSE="doc source test"
+
+# To make sure the javadoc patch doesn't break things
+WANT_SPLIT_WANT="true"
+
+inherit eutils java-pkg-2 java-ant-2
+
+MY_P="${P/-/_}"
+
+DESCRIPTION="ID3 Class Library Implementation"
+HOMEPAGE="http://jid3.blinkenlights.org/"
+SRC_URI="http://jid3.blinkenlights.org/release/${MY_P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+S="${WORKDIR}/${MY_P}"
+
+# Feel free to submit a patch that doesn't bundle the classes
+# into the result jar
+DEPEND=">=virtual/jdk-1.4
+ test? ( =dev-java/junit-3.8* )"
+
+RDEPEND=">=virtual/jre-1.4"
+
+java_prepare() {
+ epatch "${FILESDIR}"/${PV}-javadoc.patch
+ epatch "${FILESDIR}"/${PV}-tests-and-unicode.patch
+
+ rm -v "${S}"/dist/*.jar || die
+
+ if use !test; then
+ rm -rv "${S}/src/org/blinkenlights/jid3/test" || die
+ fi
+
+}
+
+src_compile() {
+ local junit="-Dlibs.junit.classpath"
+ eant jar $(use_doc) \
+ $(use test && echo ${junit}=$(java-pkg_getjars --build-only junit))
+}
+
+src_test() {
+ ejunit -cp dist/JID3.jar org.blinkenlights.jid3.test.AllTests
+}
+
+src_install() {
+ java-pkg_dojar dist/JID3.jar
+
+ use doc && java-pkg_dojavadoc dist/javadoc
+ use source && java-pkg_dosrc src/
+}
diff --git a/dev-java/jid3/metadata.xml b/dev-java/jid3/metadata.xml
new file mode 100644
index 000000000000..9c54bd0250a2
--- /dev/null
+++ b/dev-java/jid3/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>java@gentoo.org</email>
+ <name>Java</name>
+ </maintainer>
+ <longdescription lang="en">
+ JID3 is a class library, written in Java and licensed under the LGPL,
+ which provides the required functionality for editing ID3 tags commonly
+ used in MP3 media files.
+ </longdescription>
+</pkgmetadata>