From 2bb839edd7ddde4f6e75e35d720a6b884eaaf40a Mon Sep 17 00:00:00 2001 From: Tim Allison Date: Wed, 8 Aug 2018 17:30:02 +0000 Subject: [PATCH] bug 62608 -- avoid ioobe in VBAMacroReader git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1837664 13f79535-47bb-0310-9956-ffa450edef68 --- src/java/org/apache/poi/poifs/macros/VBAMacroReader.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/java/org/apache/poi/poifs/macros/VBAMacroReader.java b/src/java/org/apache/poi/poifs/macros/VBAMacroReader.java index 6a5fa620a..04402e58c 100644 --- a/src/java/org/apache/poi/poifs/macros/VBAMacroReader.java +++ b/src/java/org/apache/poi/poifs/macros/VBAMacroReader.java @@ -591,9 +591,11 @@ public class VBAMacroReader implements Closeable { for (String line : properties.split("\r\n|\n\r")) { if (!line.startsWith("[")) { String[] tokens = line.split("="); - if (tokens.length > 1 && tokens[1].length() > 1 && tokens[1].startsWith("\"")) { - // Remove any double qouates - tokens[1] = tokens[1].substring(1, tokens[1].length() - 2); + if (tokens.length > 1 && tokens[1].length() > 1 + && tokens[1].startsWith("\"") && tokens[1].endsWith("\"")) { + // Remove any double quotes + tokens[1] = tokens[1].substring(1, tokens[1].length() - 1); + } if ("Document".equals(tokens[0])) { String mn = tokens[1].substring(0, tokens[1].indexOf("/&H"));