diff --git a/src/content/content-type.cpp b/src/content/content-type.cpp index 6463a501a..b509c6ed2 100644 --- a/src/content/content-type.cpp +++ b/src/content/content-type.cpp @@ -133,7 +133,18 @@ bool ContentType::weakEqual (const ContentType &other) const { } bool ContentType::operator== (const ContentType &other) const { - return weakEqual(other) && (getParameter() == other.getParameter()); + if (!weakEqual(other)) + return false; + if (getParameters().size() != other.getParameters().size()) + return false; + for (const auto ¶m : getParameters()) { + auto it = other.findParameter(param.getName()); + if (it == other.getParameters().cend()) + return false; + if (it->getValue() != param.getValue()) + return false; + } + return true; } bool ContentType::operator!= (const ContentType &other) const {