From b90c48d6c1a147f7d846136ae7642c144bb62061 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Adam=20Wardy=C5=84ski?= <no@email>
Date: Sun, 14 Nov 2010 00:02:30 +0100
Subject: [PATCH] Add throwing destructor to RegexParseError

---
 libwccl/ops/regex.cpp | 10 +++++++---
 libwccl/ops/regex.h   |  2 ++
 2 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/libwccl/ops/regex.cpp b/libwccl/ops/regex.cpp
index 8183529..8b44177 100644
--- a/libwccl/ops/regex.cpp
+++ b/libwccl/ops/regex.cpp
@@ -8,13 +8,13 @@ RegexParseError::RegexParseError(
 	const UnicodeString& pattern,
 	const UErrorCode& status_code,
 	const UParseError& parse_error)
-	: status(u_errorName(status_code)),
+	: WcclError("Could not parse regular expression."),
+	  status(u_errorName(status_code)),
 	  pattern_line(parse_error.line),
 	  offset(parse_error.offset),
 	  pre_context(PwrNlp::to_utf8(UnicodeString(parse_error.preContext))),
 	  error(PwrNlp::to_utf8(UnicodeString(parse_error.postContext))),
-	  expression(pattern.toUTF8String(std::string())),
-	  WcclError("Could not parse regular expression: " + status + ":" + error)
+	  expression(PwrNlp::to_utf8(UnicodeString(pattern)))
 {
 }
 
@@ -27,6 +27,10 @@ std::string RegexParseError::info() const
 	return ss.str();
 }
 
+RegexParseError::~RegexParseError() throw()
+{
+}
+
 boost::shared_ptr<const RegexPattern> compile_regex(const UnicodeString &pat_str)
 {
 	UParseError error;
diff --git a/libwccl/ops/regex.h b/libwccl/ops/regex.h
index 93689ae..63784f0 100644
--- a/libwccl/ops/regex.h
+++ b/libwccl/ops/regex.h
@@ -66,6 +66,8 @@ public:
 		const UErrorCode& status_code,
 		const UParseError& parse_error);
 
+	~RegexParseError() throw();
+	
 	std::string info() const;
 
 	const std::string status;
-- 
GitLab