diff --git a/lib/register.js b/lib/register.js index 705ee15d..22a89712 100644 --- a/lib/register.js +++ b/lib/register.js @@ -369,16 +369,19 @@ entry.esModule = {}; // don't trigger getters/setters in environments that support them - if (Object.getOwnPropertyDescriptor) { - var d; - for (var p in exports) - if (d = Object.getOwnPropertyDescriptor(exports, p)) - Object.defineProperty(entry.esModule, p, d); - } else { - var hasOwnProperty = exports && exports.hasOwnProperty; - for (var p in exports) { - if (!hasOwnProperty || exports.hasOwnProperty(p)) - entry.esModule[p] = exports[p]; + if (typeof exports == 'object' || typeof exports == 'function') { + if (Object.getOwnPropertyDescriptor) { + var d; + for (var p in exports) + if (d = Object.getOwnPropertyDescriptor(exports, p)) + Object.defineProperty(entry.esModule, p, d); + } + else { + var hasOwnProperty = exports && exports.hasOwnProperty; + for (var p in exports) { + if (!hasOwnProperty || exports.hasOwnProperty(p)) + entry.esModule[p] = exports[p]; + } } } entry.esModule['default'] = exports;