diff --git a/Code/Mantid/Framework/Algorithms/src/Unwrap2.cpp b/Code/Mantid/Framework/Algorithms/src/Unwrap2.cpp
index 4654768bbcd177373bab39a437d57b865669d0d2..9ea5aa814e19257929542552fd6b5c8b1a1ba5e3 100644
--- a/Code/Mantid/Framework/Algorithms/src/Unwrap2.cpp
+++ b/Code/Mantid/Framework/Algorithms/src/Unwrap2.cpp
@@ -169,7 +169,7 @@ void Unwrap2::exec()
   }
 
   PARALLEL_FOR2(m_inputWS,outputWS)
-  for (size_t workspaceIndex = 0; workspaceIndex < m_numberOfSpectra; workspaceIndex++)
+  for (unsigned int workspaceIndex = 0; workspaceIndex < m_numberOfSpectra; workspaceIndex++)
   {
     PARALLEL_START_INTERUPT_REGION
     // get the total flight path
@@ -188,6 +188,7 @@ void Unwrap2::exec()
       // fix the x-axis
       size_t pivot = this->unwrapX(m_inputWS->readX(workspaceIndex),
                                    outputWS->dataX(workspaceIndex), Ld);
+      pivot++; // one-off difference between x and y
 
       // fix the counts using the pivot point
       const MantidVec& yIn = m_inputWS->readY(workspaceIndex);
@@ -240,8 +241,8 @@ void Unwrap2::execEvent()
   outW->sortAll(Mantid::DataObjects::TOF_SORT, m_progress);
 
   // do the actual work
-  PARALLEL_FOR2(m_inputWS,outW)
-  for (size_t workspaceIndex = 0; workspaceIndex < m_numberOfSpectra; workspaceIndex++)
+  PARALLEL_FOR2(m_inputWS, outW)
+  for (unsigned int workspaceIndex = 0; workspaceIndex < m_numberOfSpectra; workspaceIndex++)
   {
     PARALLEL_START_INTERUPT_REGION
     std::size_t numEvents = outW->getEventList(workspaceIndex).getNumberEvents();