0ad/source/simulation2/serialization
wraitii 25490bfec3 Improve JS Exception handling.
- Check for pending exceptions after function calls and script
executions.
- Call LOGERROR instead of JS_ReportError when there is a conversion
error in FromJSVal, since that can only be called from C++ (where JS
errors don't really make sense). Instead, C++ callers of FromJSVal
should handle the failure and, themselves, either report an error or
simply do something else.
- Wrap JS_ReportError since that makes updating it later easier.

This isn't a systematical fix since ToJSVal also ought return a boolean
for failures, and we probably should trigger errors instead of warnings
on 'implicit' conversions, rather a preparation diff.

Part of the SM52 migration, stage: SM45 compatible (actually SM52
incompatible, too).

Based on a patch by: Itms
Comments by: Vladislavbelov, Stan`
Refs #742, #4893

Differential Revision: https://code.wildfiregames.com/D3093
This was SVN commit r24187.
2020-11-15 18:29:17 +00:00
..
BinarySerializer.cpp Improve JS Exception handling. 2020-11-15 18:29:17 +00:00
BinarySerializer.h Use Symbols to store JS object references when serialising and delete ObjectIDCache 2020-11-12 06:40:19 +00:00
DebugSerializer.cpp Pass ScriptInterface as a const ref where possible. 2017-08-24 00:32:42 +00:00
DebugSerializer.h Replace deprecated jsval with JS::Value. 2017-08-28 10:27:36 +00:00
HashSerializer.cpp Pass ScriptInterface as a const ref where possible. 2017-08-24 00:32:42 +00:00
HashSerializer.h Pass ScriptInterface as a const ref where possible. 2017-08-24 00:32:42 +00:00
IDeserializer.cpp Fix invalid count for entityMaps 2014-03-05 14:58:17 +00:00
IDeserializer.h Replace deprecated jsval with JS::Value. 2017-08-28 10:27:36 +00:00
ISerializer.cpp Exact stack rooting for ScriptInterface::ToString. 2014-08-03 17:29:49 +00:00
ISerializer.h Remove DefPersistentRooted and unneeded includes. 2020-11-12 08:24:30 +00:00
SerializedScriptTypes.h Remove serializablePrototype code 2020-11-11 08:43:13 +00:00
SerializeTemplates.h RangeManager: Grid for 2D array, enum cleanups. 2020-06-13 09:05:40 +00:00
StdDeserializer.cpp Improve JS Exception handling. 2020-11-15 18:29:17 +00:00
StdDeserializer.h Use Symbols to store JS object references when serialising and delete ObjectIDCache 2020-11-12 06:40:19 +00:00
StdSerializer.cpp Pass ScriptInterface as a const ref where possible. 2017-08-24 00:32:42 +00:00
StdSerializer.h Pass ScriptInterface as a const ref where possible. 2017-08-24 00:32:42 +00:00