File tree Expand file tree Collapse file tree 2 files changed +17
-5
lines changed Expand file tree Collapse file tree 2 files changed +17
-5
lines changed Original file line number Diff line number Diff line change @@ -502,10 +502,15 @@ jQuery.extend({
502
502
return false ;
503
503
}
504
504
505
- // Not own constructor property must be Object
506
- if ( obj . constructor &&
507
- ! hasOwn . call ( obj , "constructor" ) &&
508
- ! hasOwn . call ( obj . constructor . prototype , "isPrototypeOf" ) ) {
505
+ try {
506
+ // Not own constructor property must be Object
507
+ if ( obj . constructor &&
508
+ ! hasOwn . call ( obj , "constructor" ) &&
509
+ ! hasOwn . call ( obj . constructor . prototype , "isPrototypeOf" ) ) {
510
+ return false ;
511
+ }
512
+ } catch ( e ) {
513
+ // IE8,9 Will throw exceptions on certain host objects #9897
509
514
return false ;
510
515
}
511
516
Original file line number Diff line number Diff line change @@ -290,7 +290,7 @@ test("type", function() {
290
290
} ) ;
291
291
292
292
test ( "isPlainObject" , function ( ) {
293
- expect ( 14 ) ;
293
+ expect ( 15 ) ;
294
294
295
295
stop ( ) ;
296
296
@@ -331,6 +331,13 @@ test("isPlainObject", function() {
331
331
// Window
332
332
ok ( ! jQuery . isPlainObject ( window ) , "window" ) ;
333
333
334
+ try {
335
+ jQuery . isPlainObject ( window . location ) ;
336
+ ok ( true , "Does not throw exceptions on host objects" ) ;
337
+ } catch ( e ) {
338
+ ok ( false , "Does not throw exceptions on host objects -- FAIL" ) ;
339
+ }
340
+
334
341
try {
335
342
var iframe = document . createElement ( "iframe" ) ;
336
343
document . body . appendChild ( iframe ) ;
You can’t perform that action at this time.
0 commit comments