diff --git a/globalredirect.module b/globalredirect.module
index e04e4c1..5218c16 100644
--- a/globalredirect.module
+++ b/globalredirect.module
@@ -216,8 +216,14 @@ function globalredirect_init() {
   // Compare the request to the alias. This also works as a 'deslashing'
   // agent. If we have a language prefix then prefix the alias
   if ($request_path != $prefix . $alias) {
+    $break = FALSE;
+    $noalias_request_path = str_replace($alias, '', $request_path);
+    // If we have a prefix language, and an alias, don't go into redirect loop.
+    if ($langcode && empty($noalias_request_path)) {
+      $break = TRUE;
+    }
     // If it's not just a slash or user has deslash on, redirect
-    if (str_replace($prefix . $alias, '', $request_path) != '/' || $settings['deslash']) {
+    if ((str_replace($prefix . $alias, '', $request_path) != '/' || $settings['deslash']) && (!$break)) {
       drupal_goto($alias, $options, 301);
     }
   }
