Permalink
Browse files

Tabs: Don't decode URLs if they're not UTF-8. Fixes #9518 - Tabs: URL…

…s encoded in anything other than UTF-8 will throw an error.
  • Loading branch information...
scottgonzalez committed Nov 13, 2013
1 parent 0a1ab40 commit 874865842bdbbf5ec48ee41640951e9f103c0f16
Showing with 13 additions and 3 deletions.
  1. +13 −3 ui/jquery.ui.tabs.js
View
@@ -36,14 +36,24 @@ $.widget( "ui.tabs", {
var rhash = /#.*$/;
return function( anchor ) {
var anchorUrl, locationUrl;
// support: IE7
// IE7 doesn't normalize the href property when set via script (#9317)
anchor = anchor.cloneNode( false );
return anchor.hash.length > 1 &&
decodeURIComponent( anchor.href.replace( rhash, "" ) ) ===
decodeURIComponent( location.href.replace( rhash, "" ) );
anchorUrl = anchor.href.replace( rhash, "" );
locationUrl = location.href.replace( rhash, "" );
// decoding may throw an error if the URL isn't UTF-8 (#9518)
try {
anchorUrl = decodeURIComponent( anchorUrl );
} catch ( error ) {}
try {
locationUrl = decodeURIComponent( locationUrl );
} catch ( error ) {}
return anchor.hash.length > 1 && anchorUrl === locationUrl;
};
})(),

0 comments on commit 8748658

Please sign in to comment.