Description: Fix constructions of sed filter in corner cases
 Some tests use sed to generate predictable outputs and employ sed files for
 that.  In some circumstances, the generated sed file syntax is incorrect, if
 the subsitions data contains the sed expresssion seperator. The patch escapes
 the data if needed.  The bug manifested in (local) autopkgtest runs, when the
 temporary directory contained the separator ("Q").
Author: Tobias Frost <tobi@debian.org>
Forwarded: <URL|no|not-needed, useless if you have a Bug field, optional>
Last-Update: 2021-12-13 <YYYY-MM-DD, last update of the meta-information, optional>
---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/src/test/cpp/util/transformer.cpp
+++ b/src/test/cpp/util/transformer.cpp
@@ -115,15 +115,26 @@
 	assert(stat == APR_SUCCESS);
 
 	std::string tmp;
-
+	
+	auto sedsaniziter = [] (const std::string in, const std::string sedseperator = "Q") {
+		std::string ret = in;
+		std::string replace_to = "\\" + sedseperator;
+		size_t pos = 0;
+		while((pos = ret.find(sedseperator, pos)) != std::string::npos) {
+			ret.replace(pos, sedseperator.length(), replace_to);
+			pos += replace_to.length();
+		}
+		return ret;
+	};
+	
 	for (log4cxx::Filter::PatternList::const_iterator iter = patterns.begin();
 		iter != patterns.end();
 		iter++)
 	{
 		tmp = "sQ";
-		tmp.append(iter->first);
+		tmp.append(sedsaniziter(iter->first));
 		tmp.append(1, 'Q');
-		tmp.append(iter->second);
+		tmp.append(sedsaniziter(iter->second));
 		tmp.append("Qg\n");
 		apr_file_puts(tmp.c_str(), regexFile);
 	}
