diff --git a/Eigen/src/Sparse/TriangularSolver.h b/Eigen/src/Sparse/TriangularSolver.h
index 168439b..30ddd1a 100644
--- a/Eigen/src/Sparse/TriangularSolver.h
+++ b/Eigen/src/Sparse/TriangularSolver.h
@@ -79,7 +79,7 @@
       {
         Scalar tmp = other.coeff(i,col);
         typename Lhs::InnerIterator it(lhs, i);
-        if (it.index() == i)
+        if (it && it.index() == i)
           ++it;
         for(; it; ++it)
         {
@@ -91,7 +91,7 @@
         else
         {
           typename Lhs::InnerIterator it(lhs, i);
-          ei_assert(it.index() == i);
+          ei_assert(it && it.index() == i);
           other.coeffRef(i,col) = tmp/it.value();
         }
       }
@@ -119,7 +119,7 @@
             ei_assert(it.index()==i);
             tmp /= it.value();
           }
-          if (it.index()==i)
+          if (it && it.index()==i)
             ++it;
           for(; it; ++it)
             other.coeffRef(it.index(), col) -= tmp * it.value();
