diff options
Diffstat (limited to 'includes/common.inc')
-rw-r--r-- | includes/common.inc | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/includes/common.inc b/includes/common.inc index f032ca11a..33e9033a7 100644 --- a/includes/common.inc +++ b/includes/common.inc @@ -305,6 +305,7 @@ function drupal_goto($url) { /* ** Translate & to simply & */ + $url = str_replace ("&", "&", $url); /* @@ -313,14 +314,16 @@ function drupal_goto($url) { ** is compiled with "--enable-trans-sid". */ - if (SID == "" || strstr($url, SID)) { + $sid = session_name() . "=" . session_id(); + + if (!session_id() || strstr($url, $sid)) { header("Location: $url"); } - else if (strstr($url, "?") && !strstr($url, SID)) { - header("Location: $url&". SID); + else if (strstr($url, "?") && !strstr($url, $sid)) { + header("Location: $url&". $sid); } else { - header("Location: $url?". SID); + header("Location: $url?". $sid); } /* |