diff --git a/jerry-core/ecma/builtin-objects/ecma-builtin-object.c b/jerry-core/ecma/builtin-objects/ecma-builtin-object.c index 6035255c3..3c3dd2565 100644 --- a/jerry-core/ecma/builtin-objects/ecma-builtin-object.c +++ b/jerry-core/ecma/builtin-objects/ecma-builtin-object.c @@ -1053,7 +1053,6 @@ ecma_builtin_object_object_assign (ecma_object_t *target_p, /**< target object * /* 5.b.iii */ ecma_collection_t *props_p = ecma_op_object_get_property_names (from_obj_p, ECMA_LIST_CONVERT_FAST_ARRAYS - | ECMA_LIST_ENUMERABLE | ECMA_LIST_SYMBOLS); #if ENABLED (JERRY_BUILTIN_PROXY) if (props_p == NULL) diff --git a/tests/jerry/es.next/proxy_get_own_property_descriptor.js b/tests/jerry/es.next/proxy_get_own_property_descriptor.js index 432187281..aa8f2919f 100644 --- a/tests/jerry/es.next/proxy_get_own_property_descriptor.js +++ b/tests/jerry/es.next/proxy_get_own_property_descriptor.js @@ -268,3 +268,17 @@ try { } // Step 17: See (Inv-2) above. + +var result = []; +var proxy = new Proxy({foo: 1, bar: 2}, { + getOwnPropertyDescriptor: function(o, v) { + result.push(v); + return Object.getOwnPropertyDescriptor(o, v); + } +}); + +Object.assign({}, proxy); + +assert(result.length === 2); +assert(result[0] === "foo"); +assert(result[1] === "bar");