I tried stopping an angular.$timeout.
However, it isn't working as expected.

Checkout [this](http://codepen.io/anon/pen/rVRmzL) codepen for code

If you press the start, I expect the timer to stop at 0. However, it keeps going to negative.
However, if you press the "stop" button, it stops. Can anyone enlighten me on what I did wrong?

Code sample below:

```
$scope.countdown = function() {
    stopped = $timeout(function() {
      if($scope.counter == 0) {
        $scope.stop();
      }
       console.log($scope.counter);
     $scope.counter--;   
     $scope.countdown();   
    }, 1000);
  };

$scope.stop = function(){
   $timeout.cancel(stopped);

    } 

```

Thanks a lot!