From dd6b5e166212facbfb9e16cd7aba6103e7e51edb Mon Sep 17 00:00:00 2001 From: srosse <stephane.rosse@frentix.com> Date: Tue, 22 Jan 2019 15:29:15 +0100 Subject: [PATCH] OO-3830: make the length of the char array is correct --- .../java/org/olat/ims/qti21/pool/QTI12To21HtmlHandler.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/olat/ims/qti21/pool/QTI12To21HtmlHandler.java b/src/main/java/org/olat/ims/qti21/pool/QTI12To21HtmlHandler.java index f1b086190d8..f8d2786d662 100644 --- a/src/main/java/org/olat/ims/qti21/pool/QTI12To21HtmlHandler.java +++ b/src/main/java/org/olat/ims/qti21/pool/QTI12To21HtmlHandler.java @@ -48,7 +48,7 @@ class QTI12To21HtmlHandler extends DefaultHandler { private final XMLStreamWriter xtw; private int subLevel = 0; - private Deque<String> skipTags = new ArrayDeque<String>(); + private Deque<String> skipTags = new ArrayDeque<>(); private Map<String,String> materialsMapping = new HashMap<>(); private boolean envelopP = false; @@ -157,6 +157,9 @@ class QTI12To21HtmlHandler extends DefaultHandler { if(start < 0) { start = 0;//Bug neko } + if(start + length > ch.length) { + length = ch.length - start;// Make sure the length is correct + } xtw.writeCharacters(ch, start, length); } else { xtw.writeCharacters(ch, start, length); -- GitLab