This diff fixes an inconsistency with what can be done in a RENDER_INIT event handler called from rendering a frame (RE_BlenderFrame() ) compared to rendering a sequence of frames (RE_BlenderAnim() ).
RENDER_INIT handled from RE_BlenderFrame() allows elements in Scene.RenderData to be altered (e.g an AddOn may alter the dimensions of the rendered image) whereas RE_BlenderAnim() would lose any changes made by the RENDER_INIT handler.
I've made changes in RE_BlenderAnim() so that the local stack based version of RenderData is created after the handler is called rather than before.
RE_BlenderFrame() and RE_BlenderAnim() take a frame or range of frames as arguments, I've also made sure the RENDER_INIT event handlers can read these frame(s) from scene.RenderData if they want to.