Redirect to the homepage if we have a blank referer.
Patch by wyntarvox.
diffs (29 lines):
diff -r 0073e01d76e8 -r 92893d18c71b htdocs/login.bml
--- a/htdocs/login.bml Wed Oct 21 19:07:36 2009 +0000
+++ b/htdocs/login.bml Wed Oct 21 19:11:20 2009 +0000
@@ -360,10 +360,8 @@
return BML::redirect("$POST{'ref'}");
} elsif ( $GET{'ret'} == 1 && LJ::check_referer() ) {
my $uniq = BML::get_request()->notes->{uniq};
- if ($uniq) {
- LJ::MemCache::set("loginout:$uniq", 1, time() + 15);
- }
- return BML::redirect("$referer");
+ LJ::MemCache::set( "loginout:$uniq", 1, time() + 15 ) if $uniq;
+ return BML::redirect( $referer || "$LJ::SITEROOT/" );
}
LJ::set_remote($u);
diff -r 0073e01d76e8 -r 92893d18c71b htdocs/logout.bml
--- a/htdocs/logout.bml Wed Oct 21 19:07:36 2009 +0000
+++ b/htdocs/logout.bml Wed Oct 21 19:11:20 2009 +0000
@@ -51,7 +51,8 @@
if ( $GET{'ret'} == 1 && LJ::check_referer() ) {
my $uniq = DW::Request->get->note('uniq');
LJ::MemCache::set( "loginout:$uniq", 1, time() + 15 ) if $uniq;
- return BML::redirect( BML::get_client_header('Referer') );
+ my $referer = BML::get_client_header( 'Referer' );
+ return BML::redirect( $referer || "$LJ::SITEROOT/" );
}
# Redirect to offsite uri if allowed.
_______________________________________________
dw-changelog mailing list
[email protected]
http://lists.dwscoalition.org/mailman/listinfo/dw-changelog