Infinite looping is a common type of program error. This paper studies the detection of infinite loops in imperative programs. A sufficient condition is given, which is based on program paths. For a simple loop, if we can establish the infeasibility of certain paths within the loop body, we can conclude that the loop does not terminate. Several examples are given to show the effectiveness of the approach. Its main benefits are that it is accurate and it can be supported by automated tools.