aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorIgor Minar2011-01-31 23:25:42 -0800
committerIgor Minar2011-02-01 09:35:18 -0800
commitc648fee5c2c46cbd2ea8b5bd4cec8005f182db1c (patch)
tree56e26a842612cf7e050737d3875b7855318d3b9a /src
parent9462c78fbf0896f0939c1bf3eb44a3f4f503f0a6 (diff)
downloadangular.js-c648fee5c2c46cbd2ea8b5bd4cec8005f182db1c.tar.bz2
fix $location to handle updates to empty hash well
Diffstat (limited to 'src')
-rw-r--r--src/services.js8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/services.js b/src/services.js
index b4aca2c1..395c1298 100644
--- a/src/services.js
+++ b/src/services.js
@@ -109,7 +109,7 @@ angularServiceInject("$location", function($browser) {
extend(location, parseHref(href));
} else {
if (isDefined(href.hash)) {
- extend(href, parseHash(href.hash));
+ extend(href, isString(href.hash) ? parseHash(href.hash) : href.hash);
}
extend(location, href);
@@ -155,7 +155,9 @@ angularServiceInject("$location", function($browser) {
} else
hash.hashSearch = path;
- update(hash);
+ hash.hash = composeHash(hash);
+
+ update({hash: hash});
}
@@ -187,7 +189,7 @@ angularServiceInject("$location", function($browser) {
}
if (location.hash != lastLocation.hash) {
var hash = parseHash(location.hash);
- updateHash(hash.path, hash.search);
+ updateHash(hash.hashPath, hash.hashSearch);
} else {
location.hash = composeHash(location);
location.href = composeHref(location);