summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAndrew Arnott <andrewarnott@gmail.com>2010-03-19 23:11:32 -0700
committerAndrew Arnott <andrewarnott@gmail.com>2010-03-19 23:11:32 -0700
commit90d459cab402ec7c1dcd521da2764732dc1dbc8b (patch)
tree904518a8aed2b5688ed1256b9ff9fb0a8ab15201 /src
parent9636d0a5a1c24a9e971e4f5847fece5a42c44852 (diff)
downloadDotNetOpenAuth-90d459cab402ec7c1dcd521da2764732dc1dbc8b.zip
DotNetOpenAuth-90d459cab402ec7c1dcd521da2764732dc1dbc8b.tar.gz
DotNetOpenAuth-90d459cab402ec7c1dcd521da2764732dc1dbc8b.tar.bz2
Enhanced JS cloning function.
Diffstat (limited to 'src')
-rw-r--r--src/DotNetOpenAuth/OpenId/RelyingParty/OpenIdRelyingPartyAjaxControlBase.js6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/DotNetOpenAuth/OpenId/RelyingParty/OpenIdRelyingPartyAjaxControlBase.js b/src/DotNetOpenAuth/OpenId/RelyingParty/OpenIdRelyingPartyAjaxControlBase.js
index 6faad56..5e01ab0 100644
--- a/src/DotNetOpenAuth/OpenId/RelyingParty/OpenIdRelyingPartyAjaxControlBase.js
+++ b/src/DotNetOpenAuth/OpenId/RelyingParty/OpenIdRelyingPartyAjaxControlBase.js
@@ -701,7 +701,7 @@ window.dnoa_internal.PositiveAssertion = function(uri) {
};
window.dnoa_internal.clone = function(obj) {
- if (obj === null || typeof (obj) != 'object') {
+ if (obj === null || typeof (obj) != 'object' || !isNaN(obj)) { // !isNaN catches Date objects
return obj;
}
@@ -710,6 +710,10 @@ window.dnoa_internal.clone = function(obj) {
temp[key] = window.dnoa_internal.clone(obj[key]);
}
+ // Copy over some built-in methods that were not included in the above loop,
+ // but nevertheless may have been overridden.
+ temp.toString = window.dnoa_internal.clone(obj.toString);
+
return temp;
};