diff options
author | Vincent Richard <[email protected]> | 2005-03-12 20:58:48 +0000 |
---|---|---|
committer | Vincent Richard <[email protected]> | 2005-03-12 20:58:48 +0000 |
commit | 825021442cd6da6b0a0501b63e028e9a7bf1d708 (patch) | |
tree | 0a965acd52285adea5758314a4591b553e300453 /src/parameterizedHeaderField.cpp | |
parent | Moved header field parsing to 'headerField::parseNext()'. (diff) | |
download | vmime-825021442cd6da6b0a0501b63e028e9a7bf1d708.tar.gz vmime-825021442cd6da6b0a0501b63e028e9a7bf1d708.zip |
Fixed parameters not showing as child components + fixed parsing bounds in typeAdapter.
Diffstat (limited to 'src/parameterizedHeaderField.cpp')
-rw-r--r-- | src/parameterizedHeaderField.cpp | 23 |
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 |