wp_redirect goes to infinity loop

Us this code instead:

function redirect_location(){

    global $wp;

    $current_url = home_url( $wp->request );

    $UserDetails = unserialize(file_get_contents( 'http://www.geoplugin.net/php.gp?ip=' ) );
    $userCountry =  $UserDetails['geoplugin_countryCode'];

    if($userCountry == 'AR'){
        $url = home_url('/ar/');
    } else if($userCountry == 'FR'){
        $url = home_url('/fr/');
    } else {
        $url = home_url('/in/');
    }

    if( ( is_page() || is_home() ) && ( strpos( $current_url, $url ) === false ) )  {

        wp_redirect($url);
        exit;
    }

}
add_action('template_redirect', 'redirect_location');