--- drupal-6.13/sites/all/modules/securepages/securepages.module.org	2009-05-04 01:00:18.000000000 +0200
+++ drupal-6.13/sites/all/modules/securepages/securepages.module	2009-09-25 11:16:38.000000000 +0200
@@ -91,6 +91,11 @@
   if (!variable_get('securepages_enable', 0)) {
     return;
   }
+  
+  if (($form_id == 'user_login' || $form_id == 'user_login_block') && variable_get('securepages_login_form', FALSE)) {
+    $form['#action'] = securepages_baseurl() . $form['#action'];
+    return;
+  }
 
   if (isset($form['#action']) && securepages_can_alter_url($form['#action'])) {
     @extract(@parse_url($form['#action']));
@@ -217,6 +222,18 @@
   $pages = variable_get('securepages_pages', "node/add*\nnode/*/edit\nuser/*\nadmin*");
   $ignore = variable_get('securepages_ignore', "*/autocomplete/*\n*/ajax/*");
 
+  //remove language prefix from path before matching the path
+  static $language_list;
+  if (!isset($language_list)) {
+    $language_list = array();
+    $languages = language_list('enabled');
+    $languages = $languages[1];
+    foreach($languages as $language => $info) {
+      $language_list[] = $language;
+    }
+    $language_list = implode('|', $language_list);
+  }
+  $path = preg_replace('/^('.$language_list.')\//', '', $path);
   if ($ignore) {
     $regexp = '/^('. preg_replace(array('/(\r\n?|\n)/', '/\\\\\*/', '/(^|\|)\\\\<front\\\\>($|\|)/'), array('|', '.*', '\1'. preg_quote(variable_get('site_frontpage', 'node'), '/') .'\2'), preg_quote($ignore, '/')) .')$/';
     if (preg_match($regexp, $path)) {
