From f91b1ec6a08f0b30350c15887763598a145c3889 Mon Sep 17 00:00:00 2001 From: Vincent Richard Date: Sat, 23 Nov 2013 10:16:06 +0100 Subject: Replaced "no_such_parameter" exception with "std::out_of_range". Fixed argument of std::out_of_range. --- src/parameterizedHeaderField.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'src/parameterizedHeaderField.cpp') diff --git a/src/parameterizedHeaderField.cpp b/src/parameterizedHeaderField.cpp index 19a0502a..95421b3f 100644 --- a/src/parameterizedHeaderField.cpp +++ b/src/parameterizedHeaderField.cpp @@ -454,7 +454,7 @@ void parameterizedHeaderField::insertParameterBefore(shared_ptr befo (m_params.begin(), m_params.end(), beforeParam); if (it == m_params.end()) - throw exceptions::no_such_parameter(beforeParam->getName()); + throw std::out_of_range("Invalid position"); m_params.insert(it, param); } @@ -462,6 +462,9 @@ void parameterizedHeaderField::insertParameterBefore(shared_ptr befo void parameterizedHeaderField::insertParameterBefore(const size_t pos, shared_ptr param) { + if (pos >= m_params.size()) + throw std::out_of_range("Invalid position"); + m_params.insert(m_params.begin() + pos, param); } @@ -472,7 +475,7 @@ void parameterizedHeaderField::insertParameterAfter(shared_ptr after (m_params.begin(), m_params.end(), afterParam); if (it == m_params.end()) - throw exceptions::no_such_parameter(afterParam->getName()); + throw std::out_of_range("Invalid position"); m_params.insert(it + 1, param); } @@ -480,6 +483,9 @@ void parameterizedHeaderField::insertParameterAfter(shared_ptr after void parameterizedHeaderField::insertParameterAfter(const size_t pos, shared_ptr param) { + if (pos >= m_params.size()) + throw std::out_of_range("Invalid position"); + m_params.insert(m_params.begin() + pos + 1, param); } @@ -490,7 +496,7 @@ void parameterizedHeaderField::removeParameter(shared_ptr param) (m_params.begin(), m_params.end(), param); if (it == m_params.end()) - throw exceptions::no_such_parameter(param->getName()); + throw std::out_of_range("Invalid position"); m_params.erase(it); } -- cgit v1.2.3