aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Shen <timshen91@gmail.com>2013-10-15 15:01:44 +0000
committerTim Shen <timshen@gcc.gnu.org>2013-10-15 15:01:44 +0000
commit96937d47ac9a177ce5fb8d342acc5651a25dd979 (patch)
tree89cf46ca4ad0cf55cbb82aee2d6d7a9767a3304c
parentafb4ac68f03545aafe3e3e08f6963be13f7aa955 (diff)
downloadgcc-96937d47ac9a177ce5fb8d342acc5651a25dd979.zip
gcc-96937d47ac9a177ce5fb8d342acc5651a25dd979.tar.gz
gcc-96937d47ac9a177ce5fb8d342acc5651a25dd979.tar.bz2
re PR libstdc++/58737 (leak in std::regex_match)
2013-10-15 Tim Shen <timshen91@gmail.com> PR libstdc++/58737 * include/bits/regex_automaton.h (_Automaton<>::~_Automaton): Fix memory leak by adding it. * include/bits/regex_executor.h (_Executor<>::~_Executor): Likewise. From-SVN: r203610
-rw-r--r--libstdc++-v3/ChangeLog7
-rw-r--r--libstdc++-v3/include/bits/regex_automaton.h4
-rw-r--r--libstdc++-v3/include/bits/regex_executor.h4
3 files changed, 15 insertions, 0 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 6148b0b..b1d6e04 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,10 @@
+2013-10-15 Tim Shen <timshen91@gmail.com>
+
+ PR libstdc++/58737
+ * include/bits/regex_automaton.h (_Automaton<>::~_Automaton): Fix memory
+ leak by adding it.
+ * include/bits/regex_executor.h (_Executor<>::~_Executor): Likewise.
+
2013-10-11 H.J. Lu <hongjiu.lu@intel.com>
* config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
diff --git a/libstdc++-v3/include/bits/regex_automaton.h b/libstdc++-v3/include/bits/regex_automaton.h
index 60744b2..35cfc1b 100644
--- a/libstdc++-v3/include/bits/regex_automaton.h
+++ b/libstdc++-v3/include/bits/regex_automaton.h
@@ -112,6 +112,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
typedef size_t _SizeT;
public:
+ virtual
+ ~_Automaton()
+ { }
+
virtual _SizeT
_M_sub_count() const = 0;
diff --git a/libstdc++-v3/include/bits/regex_executor.h b/libstdc++-v3/include/bits/regex_executor.h
index 4626437..23b5d01 100644
--- a/libstdc++-v3/include/bits/regex_executor.h
+++ b/libstdc++-v3/include/bits/regex_executor.h
@@ -83,6 +83,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
: __flags)
{ }
+ virtual
+ ~_Executor()
+ { }
+
// Set matched when string exactly match the pattern.
bool
_M_match()