0ad/source/simulation2/components
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
..
tests Improve JS Exception handling. 2020-11-15 18:29:17 +00:00
CCmpAIManager.cpp Improve JS Exception handling. 2020-11-15 18:29:17 +00:00
CCmpCinemaManager.cpp
CCmpCommandQueue.cpp Improve JS Exception handling. 2020-11-15 18:29:17 +00:00
CCmpDecay.cpp
CCmpFootprint.cpp Improve splash damage falloff calculation to account for obstruction size. 2020-08-31 15:01:04 +00:00
CCmpMinimap.cpp Update the minimap, range overlay renderer, and status bars when a player's color is changed in Atlas. 2019-06-26 19:16:57 +00:00
CCmpMotionBall.cpp
CCmpObstruction.cpp Improve splash damage falloff calculation to account for obstruction size. 2020-08-31 15:01:04 +00:00
CCmpObstructionManager.cpp Move LOS to a los helper header and cleanup Grid.h includes. 2020-06-14 20:39:03 +00:00
CCmpOverlayRenderer.cpp
CCmpOwnership.cpp
CCmpParticleManager.cpp
CCmpPathfinder.cpp Improve ship pickup. 2020-08-03 12:02:24 +00:00
CCmpPathfinder_Common.h Fix UpdateComponents logic for pathfinding following d592bf9cb6 2020-11-08 08:58:19 +00:00
CCmpPosition.cpp Removes usages of duplication of Clamp function in simulation and atlas. Refs D1763. 2019-09-18 15:02:36 +00:00
CCmpProjectileManager.cpp Move LOS to a los helper header and cleanup Grid.h includes. 2020-06-14 20:39:03 +00:00
CCmpRallyPointRenderer.cpp Refactors coordinates of SOverlayTexturedLine, replaces array of floats by array of CVector2D. 2020-11-08 14:47:25 +00:00
CCmpRallyPointRenderer.h Move LOS to a los helper header and cleanup Grid.h includes. 2020-06-14 20:39:03 +00:00
CCmpRangeManager.cpp Fix Atlas crash in RangeManager following 939002f0dc 2020-10-31 10:21:08 +00:00
CCmpRangeOverlayRenderer.cpp Refactor UpdateMessageSubscriptions in CCmpRangeOverlayRenderer 2020-09-27 13:12:30 +00:00
CCmpSelectable.cpp Allow selectable component to overwrite shape of displayed selection from footprint 2020-07-26 18:26:20 +00:00
CCmpSoundManager.cpp RangeManager: Grid for 2D array, enum cleanups. 2020-06-13 09:05:40 +00:00
CCmpTemplateManager.cpp
CCmpTerrain.cpp
CCmpTerritoryInfluence.cpp
CCmpTerritoryManager.cpp Refactors coordinates of SOverlayTexturedLine, replaces array of floats by array of CVector2D. 2020-11-08 14:47:25 +00:00
CCmpTest.cpp Remove some unused Profiler.h and CLogger.h includes. 2019-09-07 13:35:45 +00:00
CCmpUnitMotion.cpp Avoid overflow in UnitMotion. 2020-11-09 13:25:50 +00:00
CCmpUnitRenderer.cpp RangeManager: Grid for 2D array, enum cleanups. 2020-06-13 09:05:40 +00:00
CCmpVision.cpp
CCmpVisualActor.cpp Fix VisualActor OOS introduced in rp22586 2019-08-12 08:05:04 +00:00
CCmpWaterManager.cpp
ICmpAIInterface.cpp
ICmpAIInterface.h
ICmpAIManager.cpp Improve JS Exception handling. 2020-11-15 18:29:17 +00:00
ICmpAIManager.h
ICmpAttack.cpp Do not hardcode attacktypes in the engine/Atlas 2020-10-10 15:12:17 +00:00
ICmpAttack.h Do not hardcode attacktypes in the engine/Atlas 2020-10-10 15:12:17 +00:00
ICmpCinemaManager.cpp
ICmpCinemaManager.h
ICmpCommandQueue.cpp
ICmpCommandQueue.h
ICmpDecay.cpp
ICmpDecay.h
ICmpFogging.cpp
ICmpFogging.h
ICmpFootprint.cpp Improve JS Exception handling. 2020-11-15 18:29:17 +00:00
ICmpFootprint.h
ICmpGarrisonHolder.cpp Support garrisoned enitites defined in map files. 2020-03-15 13:54:50 +00:00
ICmpGarrisonHolder.h Support garrisoned enitites defined in map files. 2020-03-15 13:54:50 +00:00
ICmpGuiInterface.cpp
ICmpGuiInterface.h
ICmpIdentity.cpp Replace {gender} by {phenotype} and support this tag in VisualActor. 2019-08-01 19:14:40 +00:00
ICmpIdentity.h Replace {gender} by {phenotype} and support this tag in VisualActor. 2019-08-01 19:14:40 +00:00
ICmpMinimap.cpp Stop serializing minimap playercolors 2018-01-07 20:23:04 +00:00
ICmpMinimap.h Stop serializing minimap playercolors 2018-01-07 20:23:04 +00:00
ICmpMirage.cpp
ICmpMirage.h
ICmpMotion.cpp
ICmpMotion.h
ICmpObstruction.cpp Improve splash damage falloff calculation to account for obstruction size. 2020-08-31 15:01:04 +00:00
ICmpObstruction.h Improve splash damage falloff calculation to account for obstruction size. 2020-08-31 15:01:04 +00:00
ICmpObstructionManager.cpp Move "IsInRange" family of functions to the Obstruction Manager and make the commutative. 2019-06-06 19:37:23 +00:00
ICmpObstructionManager.h Move LOS to a los helper header and cleanup Grid.h includes. 2020-06-14 20:39:03 +00:00
ICmpOverlayRenderer.cpp
ICmpOverlayRenderer.h
ICmpOwnership.cpp
ICmpOwnership.h
ICmpParticleManager.cpp
ICmpParticleManager.h
ICmpPathfinder.cpp Fix UpdateComponents logic for pathfinding following d592bf9cb6 2020-11-08 08:58:19 +00:00
ICmpPathfinder.h Improve ship pickup. 2020-08-03 12:02:24 +00:00
ICmpPlayer.cpp Split CColor from Shapes. 2019-01-13 15:38:41 +00:00
ICmpPlayer.h Diplomacy Colors 2018-02-03 14:17:31 +00:00
ICmpPlayerManager.cpp
ICmpPlayerManager.h
ICmpPosition.cpp
ICmpPosition.h
ICmpProjectileManager.cpp
ICmpProjectileManager.h
ICmpRallyPoint.cpp Spawn units in rally point direction 2018-02-07 20:58:07 +00:00
ICmpRallyPoint.h Spawn units in rally point direction 2018-02-07 20:58:07 +00:00
ICmpRallyPointRenderer.cpp Diplomacy Colors 2018-02-03 14:17:31 +00:00
ICmpRallyPointRenderer.h Spawn units in rally point direction 2018-02-07 20:58:07 +00:00
ICmpRangeManager.cpp RangeManager: Grid for 2D array, enum cleanups. 2020-06-13 09:05:40 +00:00
ICmpRangeManager.h Move LOS to a los helper header and cleanup Grid.h includes. 2020-06-14 20:39:03 +00:00
ICmpRangeOverlayRenderer.cpp Diplomacy Colors 2018-02-03 14:17:31 +00:00
ICmpRangeOverlayRenderer.h Diplomacy Colors 2018-02-03 14:17:31 +00:00
ICmpSelectable.cpp Split CColor from Shapes. 2019-01-13 15:38:41 +00:00
ICmpSelectable.h Diplomacy Colors 2018-02-03 14:17:31 +00:00
ICmpSettlement.cpp
ICmpSettlement.h
ICmpSound.cpp Fix units not being able to play sounds when walking and running 2018-02-24 18:13:03 +00:00
ICmpSound.h Fix units not being able to play sounds when walking and running 2018-02-24 18:13:03 +00:00
ICmpSoundManager.cpp
ICmpSoundManager.h
ICmpTemplateManager.cpp
ICmpTemplateManager.h
ICmpTerrain.cpp
ICmpTerrain.h
ICmpTerritoryDecayManager.cpp
ICmpTerritoryDecayManager.h
ICmpTerritoryInfluence.cpp
ICmpTerritoryInfluence.h
ICmpTerritoryManager.cpp Diplomacy Colors 2018-02-03 14:17:31 +00:00
ICmpTerritoryManager.h Diplomacy Colors 2018-02-03 14:17:31 +00:00
ICmpTest.cpp
ICmpTest.h
ICmpTurretHolder.cpp Store turret positions in map files. 2020-11-11 19:40:44 +00:00
ICmpTurretHolder.h Store turret positions in map files. 2020-11-11 19:40:44 +00:00
ICmpUnitMotion.cpp Improve ship pickup. 2020-08-03 12:02:24 +00:00
ICmpUnitMotion.h Improve ship pickup. 2020-08-03 12:02:24 +00:00
ICmpUnitRenderer.cpp
ICmpUnitRenderer.h
ICmpUnknownScript.cpp
ICmpUnknownScript.h
ICmpValueModificationManager.cpp
ICmpValueModificationManager.h
ICmpVisibility.cpp RangeManager: Grid for 2D array, enum cleanups. 2020-06-13 09:05:40 +00:00
ICmpVisibility.h RangeManager: Grid for 2D array, enum cleanups. 2020-06-13 09:05:40 +00:00
ICmpVision.cpp
ICmpVision.h
ICmpVisual.cpp UnitMotion / AI - remove the special 'move' animation, make UnitMotion inform the visual actor directly. 2019-07-09 19:56:28 +00:00
ICmpVisual.h UnitMotion / AI - remove the special 'move' animation, make UnitMotion inform the visual actor directly. 2019-07-09 19:56:28 +00:00
ICmpWaterManager.cpp
ICmpWaterManager.h