aboutsummaryrefslogtreecommitdiffstats
path: root/src/parameterizedHeaderField.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/parameterizedHeaderField.cpp')
-rw-r--r--src/parameterizedHeaderField.cpp23
1 files changed, 21 insertions, 2 deletions
diff --git a/src/parameterizedHeaderField.cpp b/src/parameterizedHeaderField.cpp
index 2d7257be..1730f17e 100644
--- a/src/parameterizedHeaderField.cpp
+++ b/src/parameterizedHeaderField.cpp
@@ -184,9 +184,13 @@ void parameterizedHeaderField::parse(const string& buffer, const string::size_ty
if (attrStart != attrEnd && value.length())
{
// Append this parameter to the list
- appendParameter(parameterFactory::getInstance()->
+ parameter* param = parameterFactory::getInstance()->
create(string(buffer.begin() + attrStart,
- buffer.begin() + attrEnd), value));
+ buffer.begin() + attrEnd), value);
+
+ param->setParsedBounds(attrStart, position + (p - pstart));
+
+ appendParameter(param);
}
// Skip white-spaces after this parameter
@@ -434,4 +438,19 @@ const std::vector <parameter*> parameterizedHeaderField::getParameterList()
}
+const std::vector <const component*> parameterizedHeaderField::getChildComponents() const
+{
+ std::vector <const component*> list = headerField::getChildComponents();
+
+ for (std::vector <parameter*>::const_iterator it = m_params.begin() ;
+ it != m_params.end() ; ++it)
+ {
+ list.push_back(*it);
+ }
+
+ return (list);
+}
+
+
+
} // vmime