Object.defineProperty can fail in IE8 when used with defineProperties, since the for-in loop will iterate over __proto__, and this could be null.
Object.defineProperty can fail in IE8 when used with defineProperties, since the for-in loop will iterate over __proto__, and this could be null.

For example:
    var props = Object.create(null);
    ...
    Object.defineProperties(obj, props);  // Error in IE8

I've added a guard against iterating over the __proto__ property.

jefferydutra/es5-shim,sky-uk/es5-shim,Xotic750/es5-shim,imsun/es5-shim,laomu1988/es5-shim,olemis/es5-shim,goodbedford/es5-shim,shuaiyunzhang/es5-shim,meteor/es5-shim,fashionsun/es5-shim,npmcomponent/code42day-es5-shim,briandipalma/es5-shim,meteor/es5-shim,laomu1988/es5-shim,ljharb/es5-shim,es-shims/es5-shim,ljharb/es5-shim,es-shims/es5-shim,sky-uk/es5-shim,matthewjh/es5-shim,fashionsun/es5-shim,shuaiyunzhang/es5-shim,lewisje/es5-shim,Xotic750/es5-shim,9040044/es5-shim,goodbedford/es5-shim,olemis/es5-shim,9040044/es5-shim,jefferydutra/es5-shim,lewisje/es5-shim,matthewjh/es5-shim,imsun/es5-shim,briandipalma/es5-shim