From 058e8ba402e5b46c80a63f2d6f79d575778ae469 Mon Sep 17 00:00:00 2001 From: Ton Roosendaal Date: Mon, 6 Jun 2005 13:10:02 +0000 Subject: Different fix for the nasty stars problem, previous one swallowed the ESC during alt+a playback. Solved in the 'proper' way, which is not abusing the (while render) ESC callback for UI draw of stars, this confused everything. Means; you cannot esc stars drawing anymore. Nice feature, bad hack... --- source/blender/renderconverter/intern/convertBlenderScene.c | 10 ++-------- source/blender/src/drawview.c | 1 - source/blender/src/renderwin.c | 2 +- 3 files changed, 3 insertions(+), 10 deletions(-) diff --git a/source/blender/renderconverter/intern/convertBlenderScene.c b/source/blender/renderconverter/intern/convertBlenderScene.c index e9d0b5b9070..f9dc2263829 100644 --- a/source/blender/renderconverter/intern/convertBlenderScene.c +++ b/source/blender/renderconverter/intern/convertBlenderScene.c @@ -317,15 +317,9 @@ void RE_make_stars(void (*initfunc)(void), } } } -// if(done > MAXVERT) { -// printf("Too many stars\n"); -// break; -// } - if(blender_test_break()) break; + /* do not call blender_test_break() here, since it is used in UI as well, confusing the callback system */ + /* main cause is G.afbreek of course, a global again... (ton) */ } -// if(done > MAXVERT) break; - - if(blender_test_break()) break; } if (termfunc) termfunc(); } diff --git a/source/blender/src/drawview.c b/source/blender/src/drawview.c index 9036e5e6fca..aa60b73269d 100644 --- a/source/blender/src/drawview.c +++ b/source/blender/src/drawview.c @@ -1839,7 +1839,6 @@ void drawview3dspace(ScrArea *sa, void *spacedata) if(G.scene->world->mode & WO_STARS) { RE_make_stars(star_stuff_init_func, star_stuff_vertex_func, star_stuff_term_func); - G.afbreek= 0; /* silly, stars draw uses blender_test_break(), can cause render to stop */ } } if(G.vd->flag & V3D_DISPBGPIC) draw_bgpic(); diff --git a/source/blender/src/renderwin.c b/source/blender/src/renderwin.c index 6d5ab76657f..a87f3863ec3 100644 --- a/source/blender/src/renderwin.c +++ b/source/blender/src/renderwin.c @@ -1022,6 +1022,7 @@ static void do_render(View3D *ogl_render_view3d, int anim, int force_dispwin) /* we set this flag to prevent renderwindow queue to execute another render */ R.flag= R_RENDERING; + G.afbreek= 0; if (G.displaymode == R_DISPLAYWIN || force_dispwin) { RE_set_initrenderdisplay_callback(NULL); @@ -1051,7 +1052,6 @@ static void do_render(View3D *ogl_render_view3d, int anim, int force_dispwin) } waitcursor(1); - G.afbreek= 0; if(G.obedit && !(G.scene->r.scemode & R_OGL)) { exit_editmode(0); /* 0 = no free data */ } -- cgit v1.2.3