From: Niki Roo Date: Tue, 19 May 2020 19:16:46 +0000 (+0200) Subject: Merge branch 'master' into subtree X-Git-Url: http://git.nikiroo.be/?p=fanfix.git;a=commitdiff_plain;h=9e7330d793887fe9ee378ca1413141d7761e76ca;hp=-c Merge branch 'master' into subtree --- 9e7330d793887fe9ee378ca1413141d7761e76ca diff --combined streams/ReplaceInputStream.java index 1cc5139,9f73350..9f73350 --- a/streams/ReplaceInputStream.java +++ b/streams/ReplaceInputStream.java @@@ -141,11 -141,11 +141,11 @@@ public class ReplaceInputStream extend if (froms[i] != null && froms[i].length > 0 && StreamUtils.startsWith(froms[i], source, spos, slen)) { if (tos[i] != null && tos[i].length > 0) { - System.arraycopy(tos[i], 0, buffer, off + spos, + System.arraycopy(tos[i], 0, buffer, off + count, tos[i].length); count += tos[i].length; } - + spos += froms[i].length; replaced = true; break; diff --combined test_code/ReplaceInputStreamTest.java index e6e2112,d08a91e..d08a91e --- a/test_code/ReplaceInputStreamTest.java +++ b/test_code/ReplaceInputStreamTest.java @@@ -48,7 -48,7 +48,7 @@@ class ReplaceInputStreamTest extends Te } }); - addTest(new TestCase("Lnger replace") { + addTest(new TestCase("Longer replace") { @Override public void test() throws Exception { byte[] data = new byte[] { 42, 12, 0, 127 }; @@@ -79,17 -79,32 +79,32 @@@ byte[] data = "I like red".getBytes("UTF-8"); ReplaceInputStream in = new ReplaceInputStream( new ByteArrayInputStream(data), - "red".getBytes("UTF-8"), "blue".getBytes("UTF-8")); + "red", "blue"); checkArrays(this, "FIRST", in, "I like blue".getBytes("UTF-8")); data = "I like blue".getBytes("UTF-8"); in = new ReplaceInputStream(new ByteArrayInputStream(data), - "blue".getBytes("UTF-8"), "red".getBytes("UTF-8")); + "blue", "red"); checkArrays(this, "FIRST", in, "I like red".getBytes("UTF-8")); } }); + + addTest(new TestCase("Multiple replaces") { + @Override + public void test() throws Exception { + byte[] data = "I like red".getBytes("UTF-8"); + ReplaceInputStream in = new ReplaceInputStream( + new ByteArrayInputStream(data), // + new String[] {"like", "red"}, // + new String[] {"dislike", "green"} // + ); + + String result = new String(IOUtils.toByteArray(in), "UTF-8"); + assertEquals("I dislike green", result); + } + }); } static void checkArrays(TestCase test, String prefix, InputStream in, diff --combined ui/UIUtils.java index 6c40389,e4eb000..e4eb000 --- a/ui/UIUtils.java +++ b/ui/UIUtils.java @@@ -22,7 -22,6 +22,6 @@@ import javax.swing.UnsupportedLookAndFe import javax.swing.event.HyperlinkEvent; import javax.swing.event.HyperlinkListener; - import be.nikiroo.fanfix.Instance; import be.nikiroo.utils.Version; import be.nikiroo.utils.VersionCheck; @@@ -306,9 -305,9 +305,9 @@@ public class UIUtils try { Desktop.getDesktop().browse(e.getURL().toURI()); } catch (IOException ee) { - Instance.getInstance().getTraceHandler().error(ee); + ee.printStackTrace(); } catch (URISyntaxException ee) { - Instance.getInstance().getTraceHandler().error(ee); + ee.printStackTrace(); } } });