...and call callback when appropriate