diff --git a/modules/mol/mm/src/simulation.cc b/modules/mol/mm/src/simulation.cc
index 09f6465a282302ffc68b27415556ea9ef301e604..2a23ddb9a629a112b3301c35dd6756ad2ba08b92 100644
--- a/modules/mol/mm/src/simulation.cc
+++ b/modules/mol/mm/src/simulation.cc
@@ -900,12 +900,13 @@ void Simulation::ReinitializeContext() {
   // reinitializing requires to reset all those things!
   // Be aware, state of random number generators etc might not be
   // preserved!
-  OpenMM::State state = context_->getState(OpenMM::State::Positions |
-                                           OpenMM::State::Velocities |
-                                           OpenMM::State::Forces |
-                                           OpenMM::State::Energy |
-                                           OpenMM::State::Parameters |
-                                           OpenMM::State::ParameterDerivatives);
+
+  // openmm uses bitmasks to selectively extract data from the context.
+  // The context data might change with different OpenMM versions.
+  // Passing -1 automagically sets all bits to true => ALL available
+  // data gets extracted. 
+  int true_bitmask = -1;
+  OpenMM::State state = context_->getState(true_bitmask);
   context_->reinitialize();
   context_->setState(state); 
 }