Removed the possibility using a class StringBuilder.

            boolean isMarkupStart = line.startsWith("\n***");
            if (isMarkupStart) {
                isStart = line.contains(START_TAG);
                isEnd = line.contains(END_TAG);
                inTag = isStart || isEnd;
            }
            if(inTag){
                tagForMatch.append(line);
            }else if (isInValidText) {
                super.insertString(bypass, offset, line, attr);
            }
            //The stringbuffer is to be sure *** is not broken into many lines
            if (inTag && tagForMatch.toString().endsWith("***")) {
                isInValidText = isStart && !isEnd;
                inTag = false;
                tagForMatch.setLength(0);
            }