 		return
 
 	scheduleUnhandledRejection = genScheduler 100, (p) ->
+		pre = p
+		while pre
+			return if pre._hasUnhandled
+			pre._hasUnhandled = true
+			pre = pre._pre
+
 		Yaku.onUnhandledRejection p._value, p
 		return
-
-	checkRejection = (p) ->
-		pre = p._pre
-		while pre
-			return if pre._hasUnhandled
-
-			pre = pre._pre
-
-		p._hasUnhandled = true
-		scheduleUnhandledRejection p
 
 	callHanler = (handler, value) ->
 		# 2.2.5

				return

			if isFunction xthen
				settleXthen p, x, xthen
			else
				# 2.3.3.4

		p._value = value

		if state == $rejected
			scheduleUnhandledRejection p

		i = 0
		len = p._pCount
