From acc70c67c6ddc7e60e0ce6a0235e0ddcaafd9178 Mon Sep 17 00:00:00 2001 From: Alex Kogon Date: Thu, 10 Sep 2015 16:09:16 +0200 Subject: [PATCH] fixed error caused by editing twice --- src/org/synthuse/XpathManager.java | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/org/synthuse/XpathManager.java b/src/org/synthuse/XpathManager.java index 9feb8ae..737be8d 100644 --- a/src/org/synthuse/XpathManager.java +++ b/src/org/synthuse/XpathManager.java @@ -146,13 +146,14 @@ public class XpathManager implements Runnable{ if (!parentClassStr.isEmpty()) { if (!txtStr.isEmpty()&&useFullTextMatching) { - if (txtStr.length() > maxTextLength) {// if the text is too long only test the first maxTextLength characters - txtStr = WindowsEnumeratedXml.escapeXmlAttributeValue(txtStr.substring(0, maxTextLength)); - txtStr = " and starts-with(@text,'" + txtStr + "')"; + String copyOfTxtStr = txtStr; + if (copyOfTxtStr.length() > maxTextLength) {// if the text is too long only test the first maxTextLength characters + copyOfTxtStr = WindowsEnumeratedXml.escapeXmlAttributeValue(copyOfTxtStr.substring(0, maxTextLength)); + copyOfTxtStr = " and starts-with(@text,'" + copyOfTxtStr + "')"; } else - txtStr = " and @text='" + txtStr + "'"; - builtXpath = "//win[@class='" + parentClassStr + "'" + parentTxtStr + "]/win[@class='" + classStr + "'" + txtStr + "]"; + copyOfTxtStr = " and @text='" + copyOfTxtStr + "'"; + builtXpath = "//win[@class='" + parentClassStr + "'" + parentTxtStr + "]/win[@class='" + classStr + "'" + copyOfTxtStr + "]"; } else {