diff --git a/src/multicolvar/BridgedMultiColvarFunction.cpp b/src/multicolvar/BridgedMultiColvarFunction.cpp
index cedbce6f068b6976e68a796547c2c11b9942be3b..a814abd31746c349276fa3a57c1ce0f7ec4a8d96 100644
--- a/src/multicolvar/BridgedMultiColvarFunction.cpp
+++ b/src/multicolvar/BridgedMultiColvarFunction.cpp
@@ -71,7 +71,7 @@ void BridgedMultiColvarFunction::transformBridgedDerivatives( const unsigned& cu
 
 void BridgedMultiColvarFunction::performTask( const unsigned& taskIndex, const unsigned& current, MultiValue& myvals ) const {
   MultiValue invals( mycolv->getNumberOfQuantities(), mycolv->getNumberOfDerivatives() );
-  mycolv->performTask( taskIndex, current, invals );
+  invals.clearAll(); mycolv->performTask( taskIndex, current, invals );
   transformBridgedDerivatives( taskIndex, invals, myvals ); 
 }