From 355d25e73d90f3174db459a5a380193e0505ada4 Mon Sep 17 00:00:00 2001 From: Dries Buytaert Date: Wed, 4 Jun 2003 18:24:39 +0000 Subject: - Bugfix: renamed the SQL field 'types' to 'nodes' because 'types' is a reserved keyword in MySQL 4. This fixes critical bug #1618. Patch by Marco. ==> This fix requires to run update.php! - Bugfix: made sessions work without warnings when register_globals is turned off. The solution is to use $_SESSION instead of session_register(). This fixes critical bug #1797. Patch by Marco. - Bugfix: sometimes error messages where being discarded when previewing a node. Patch by Craig Courtney. - Bugfix: fixed charset problems. This fixes critical bug #1549. Patch '0023.charset.patch' by Al. - Code improvements: removed some dead code from the comment module. Patch by Marco. - Documentation improvements: polished the node module help texts and form descriptions. Patch '0019.node.module.help.patch' by Al. - CSS improvements all over the map! Patch '0021.more.css.patch' by Al. - GUI improvements: improved the position of Druplicon in the admin menu. Patch '0020.admin.logo.patch' by Al. - GUI improvements: new logos for theme Marvin and theme UnConeD. Logos by Kristjan Jansen. - GUI improvements: small changes to the output emitted by the profile module. Suggestions by Steven Wittens. - GUI improvements: small fixes to Xtemplate. Patch '0022.xtemplate.css.patch' by Al. TODO: - Some modules such as the buddy list module and the annotation module in the contributions repository are also using session_register(). They should be updated. We should setup a task on Drupal. - There is code emitting '
' which doesn't validate. - Does our XML feeds validate with the charset changes? - The forum module's SQL doesn't work properly on PostgreSQL. --- includes/common.inc | 32 +++++++++++++++----------------- 1 file changed, 15 insertions(+), 17 deletions(-) (limited to 'includes/common.inc') diff --git a/includes/common.inc b/includes/common.inc index 532720898..708ee9a39 100644 --- a/includes/common.inc +++ b/includes/common.inc @@ -453,11 +453,8 @@ function drupal_goto($url) { */ function referer_save() { - global $referer; - if (!strstr($_SERVER["HTTP_REFERER"], request_uri())) { - $referer = $_SERVER["HTTP_REFERER"]; - session_register("referer"); + $_SESSION["referer"] = $_SERVER["HTTP_REFERER"]; } } @@ -466,10 +463,8 @@ function referer_save() { */ function referer_load() { - global $referer; - - if (session_is_registered("referer")) { - return $referer; + if (isset($_SESSION["referer"])) { + return $_SESSION["referer"]; } else { return 0; @@ -608,12 +603,12 @@ function format_rss_channel($title, $link, $description, $items, $language = "en // arbitrary elements may be added using the $args associative array $output .= "\n"; - $output .= " ". htmlentities(strip_tags($title)) ."\n"; - $output .= " ". htmlentities(strip_tags($link)) ."\n"; - $output .= " ". htmlentities($description) ."\n"; - $output .= " ". htmlentities(strip_tags($language)) ."\n"; + $output .= " ". htmlspecialchars(strip_tags($title)) ."\n"; + $output .= " ". htmlspecialchars(strip_tags($link)) ."\n"; + $output .= " ". htmlspecialchars($description) ."\n"; + $output .= " ". htmlspecialchars(strip_tags($language)) ."\n"; foreach ($args as $key => $value) { - $output .= "<$key>". htmlentities(strip_tags($value)) .""; + $output .= "<$key>". htmlspecialchars(strip_tags($value)) .""; } $output .= $items; $output .= "\n"; @@ -625,11 +620,11 @@ function format_rss_item($title, $link, $description, $args = array()) { // arbitrary elements may be added using the $args associative array $output .= "\n"; - $output .= " ". htmlentities(strip_tags($title)) ."\n"; - $output .= " ". htmlentities(strip_tags($link)) ."\n"; - $output .= " ". htmlentities(check_output($description)) ."\n"; + $output .= " ". htmlspecialchars(strip_tags($title)) ."\n"; + $output .= " ". htmlspecialchars(strip_tags($link)) ."\n"; + $output .= " ". htmlspecialchars(check_output($description)) ."\n"; foreach ($args as $key => $value) { - $output .= "<$key>". htmlentities(strip_tags($value)) .""; + $output .= "<$key>". htmlspecialchars(strip_tags($value)) .""; } $output .= "\n"; @@ -1004,6 +999,9 @@ $conf = variable_init(isset($conf) ? $conf : array()); // set error handler: set_error_handler("error_handler"); +// spit out the correct charset http header +header("Content-Type: text/html; charset=". variable_get("charset", "iso-8859-1")); + // initialize installed modules: module_init(); -- cgit v1.2.3