Fix error instance query if the error is from a Proxy (#4459)

When accessing an error's type there is no need to check the Proxy
prototype (as there is none).

Fixes: #4440

JerryScript-DCO-1.0-Signed-off-by: Peter Gal pgal.usz@partner.samsung.com
This commit is contained in:
Péter Gál
2021-01-13 15:14:04 +01:00
committed by GitHub
parent 3dc6ed0dd5
commit 75586242ba
2 changed files with 37 additions and 1 deletions
@@ -0,0 +1,36 @@
// Copyright JS Foundation and other contributors, http://js.foundation
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
var handler = {
get: function(target, key) {
assert(typeof(target) === 'function');
assert(key === 'dummy');
return 42;
}
};
try {
throw new Proxy(Function(), handler);
assert(false);
} catch (ex) {
/* 'ex' is the Proxy */
assert(typeof(ex) === 'function');
assert(ex.dummy === 42);
}
try {
throw new Proxy(EvalError(), { });
} catch (ex) {
assert(ex instanceof EvalError);
}