Fix T41067: Muted nodes still do data type conversions.
Proxy operations from muted nodes would still create conversion operations where the datatypes don't match, which creates unexpected behavior. Arguably datatype conversion could still happen even when the main operation is muted, but this would be a design change and so is disabled now.
This commit is contained in:
@@ -269,6 +269,13 @@ void NodeOperationBuilder::add_datatype_conversions()
|
||||
Links convert_links;
|
||||
for (Links::const_iterator it = m_links.begin(); it != m_links.end(); ++it) {
|
||||
const Link &link = *it;
|
||||
|
||||
/* proxy operations can skip data type conversion */
|
||||
NodeOperation *from_op = &link.from()->getOperation();
|
||||
NodeOperation *to_op = &link.to()->getOperation();
|
||||
if (!from_op->useDatatypeConversion() || !to_op->useDatatypeConversion())
|
||||
continue;
|
||||
|
||||
if (link.from()->getDataType() != link.to()->getDataType())
|
||||
convert_links.push_back(link);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user