This issue occured while working on PR #2914, where the camera returns false in on_render_begin() when there are errors. In such a case, and endless loop is entered that infinitely calls on_render_begin(). All other cameras always return true and therefore never run into this problem, but the issue can easily be reproduced by forcing a return false.
It appears that the MasterRenderer skips the frame, if the scene entities failed to perform on_render_begin() (see here). It does so by returning renderer_controller.get_status(), which is ContinueRendering, but this is what causes the infinite loop. In my eyes, AbortRendering should be returned instead, like is done a bit further below.
Is there a reason that I am missing, why the rendering process should not be aborted here?
This issue occured while working on PR #2914, where the camera returns
falseinon_render_begin()when there are errors. In such a case, and endless loop is entered that infinitely callson_render_begin(). All other cameras always returntrueand therefore never run into this problem, but the issue can easily be reproduced by forcing areturn false.It appears that the MasterRenderer skips the frame, if the scene entities failed to perform
on_render_begin()(see here). It does so by returningrenderer_controller.get_status(), which isContinueRendering, but this is what causes the infinite loop. In my eyes,AbortRenderingshould be returned instead, like is done a bit further below.Is there a reason that I am missing, why the rendering process should not be aborted here?