diff --git a/src/ceres_wrapper/ceres_manager.cpp b/src/ceres_wrapper/ceres_manager.cpp
index b00edf0e3f65d0474b4f6b54925d089a09fbc230..d1305cb535de26aa2853471e576e4967fe1058e2 100644
--- a/src/ceres_wrapper/ceres_manager.cpp
+++ b/src/ceres_wrapper/ceres_manager.cpp
@@ -105,7 +105,7 @@ void CeresManager::computeCovariances(const CovarianceBlocksToBeComputed _blocks
         for (auto sb : fr_ptr->getStateBlockVec())
           if (sb)
             for(auto sb2 : fr_ptr->getStateBlockVec())
-              if (sb)
+              if (sb2)
               {
                 state_block_pairs.emplace_back(sb, sb2);
                 double_pairs.emplace_back(getAssociatedMemBlockPtr(sb), getAssociatedMemBlockPtr(sb2));