Merge "Skip unprintable symbols when saving traceback to xml report"
diff --git a/src/com/mirantis/system_qa/SharedPipeline.groovy b/src/com/mirantis/system_qa/SharedPipeline.groovy
index b568702..3546ef7 100644
--- a/src/com/mirantis/system_qa/SharedPipeline.groovy
+++ b/src/com/mirantis/system_qa/SharedPipeline.groovy
@@ -663,7 +663,9 @@
     // 'error' status is assumed as 'Blocker' in TestRail reporter
 
     // Replace '<' and '>' to '&lt;' and '&gt;' to avoid conflicts between xml tags in the message and JUnit report
-    def String text_filtered = text.replaceAll("<","&lt;").replaceAll(">", "&gt;")
+    def String text_filtered = text.replaceAll("<","&lt;").
+        replaceAll(">", "&gt;").
+        replaceAll("[^\\x{0009}\\x{000a}\\x{000d}\\x{0020}-\\x{D7FF}\\x{E000}-\\x{FFFD}]+", "")
 
     def script = """\
 <?xml version=\"1.0\" encoding=\"utf-8\"?>