src/jdk/nashorn/internal/objects/NativeError.java
Print this page
*** 325,335 ****
--- 325,340 ----
}
final Object exception = ECMAException.getException(sobj);
if (exception instanceof Throwable) {
Object value = getScriptStackString(sobj, (Throwable)exception);
+ if (sobj.hasOwnProperty(STACK)) {
sobj.put(STACK, value, false);
+ } else {
+ sobj.addOwnProperty(STACK, Attribute.NOT_ENUMERABLE, value);
+ }
+
return value;
}
return UNDEFINED;
}
*** 344,354 ****
* @return value that was set
*/
public static Object setStack(final Object self, final Object value) {
Global.checkObject(self);
final ScriptObject sobj = (ScriptObject)self;
! sobj.set(STACK, value, false);
return value;
}
/**
* ECMA 15.11.4.4 Error.prototype.toString ( )
--- 349,364 ----
* @return value that was set
*/
public static Object setStack(final Object self, final Object value) {
Global.checkObject(self);
final ScriptObject sobj = (ScriptObject)self;
! if (sobj.hasOwnProperty(STACK)) {
! sobj.put(STACK, value, false);
! } else {
! sobj.addOwnProperty(STACK, Attribute.NOT_ENUMERABLE, value);
! }
!
return value;
}
/**
* ECMA 15.11.4.4 Error.prototype.toString ( )