Преглед изворни кода

Ensure we are in a digest loop when updating validation errors

James Allen пре 11 година
родитељ
комит
36513f443c
1 измењених фајлова са 3 додато и 1 уклоњено
  1. 3 1
      services/web/public/coffee/main/new-subscription.coffee

+ 3 - 1
services/web/public/coffee/main/new-subscription.coffee

@@ -81,7 +81,9 @@ define [
 		completeSubscription = (err, recurly_token_id) ->
 		completeSubscription = (err, recurly_token_id) ->
 			$scope.validation.errorFields = {}
 			$scope.validation.errorFields = {}
 			if err?
 			if err?
-				$scope.$apply () ->
+				# We may or may not be in a digest loop here depending on
+				# whether recurly could do validation locally, so do it async
+				$scope.$evalAsync () ->
 					$scope.processing = false
 					$scope.processing = false
 					$scope.genericError = err.message
 					$scope.genericError = err.message
 					_.each err.fields, (field)-> $scope.validation.errorFields[field] = true
 					_.each err.fields, (field)-> $scope.validation.errorFields[field] = true