From 7db6438d78aa2a1dcf2a8f3bf454ee68402bfb95 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Mon, 30 Mar 2009 21:45:51 +0000 Subject: [PATCH] hashtable.h (clear): Return quickly if the table is empty. * include/backward/hashtable.h (clear): Return quickly if the table is empty. From-SVN: r145318 --- libstdc++-v3/ChangeLog | 5 +++++ libstdc++-v3/include/backward/hashtable.h | 3 +++ 2 files changed, 8 insertions(+) diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 0c51edb7aafe..6b4744621528 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,8 @@ +2009-03-30 Ian Lance Taylor + + * include/backward/hashtable.h (clear): Return quickly if the + table is empty. + 2009-03-27 Ian Lance Taylor * include/backward/hashtable.h (_S_num_primes): Change to 29. diff --git a/libstdc++-v3/include/backward/hashtable.h b/libstdc++-v3/include/backward/hashtable.h index c0981ee85654..e0ba83b34f1b 100644 --- a/libstdc++-v3/include/backward/hashtable.h +++ b/libstdc++-v3/include/backward/hashtable.h @@ -1076,6 +1076,9 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) hashtable<_Val, _Key, _HF, _Ex, _Eq, _All>:: clear() { + if (_M_num_elements == 0) + return; + for (size_type __i = 0; __i < _M_buckets.size(); ++__i) { _Node* __cur = _M_buckets[__i];