diff options
author | Janne Karhu <jhkarh@gmail.com> | 2010-11-04 23:17:38 +0300 |
---|---|---|
committer | Janne Karhu <jhkarh@gmail.com> | 2010-11-04 23:17:38 +0300 |
commit | 8bbf27dfbd8c3831541653f14de4e8b0bdf83259 (patch) | |
tree | 0ce41dee620aa417dc4b7ba4c763623d5b855f66 /source/blender/editors/physics/physics_pointcache.c | |
parent | 951882e289e43ae83ab892b2151b47c07fcfe218 (diff) |
Temporary fix for "freezing when pointcache is baked":
* WM_timecursor is broken somehow, so pointcache baking makes the cursor disappear.
* For user this seems like blender has frozen although it's just a matter of no progress indication.
* This fix just sets the default "busy" cursor for the whole duration of baking and reports progress in the console.
* If there's and easy fix for this then it should probably be done straight away, but I want to re-implement baking using the job system soon anyways, so a proper fix for this is not strictly necessary.
Diffstat (limited to 'source/blender/editors/physics/physics_pointcache.c')
-rw-r--r-- | source/blender/editors/physics/physics_pointcache.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/source/blender/editors/physics/physics_pointcache.c b/source/blender/editors/physics/physics_pointcache.c index 9e39862cf5d..519a85fe39a 100644 --- a/source/blender/editors/physics/physics_pointcache.c +++ b/source/blender/editors/physics/physics_pointcache.c @@ -83,7 +83,7 @@ void bake_console_progress(void *UNUSED(arg), int nr) void bake_console_progress_end(void *UNUSED(arg)) { - printf("\n"); + printf("\rbake: done!\n"); } static int ptcache_bake_all_exec(bContext *C, wmOperator *op) @@ -103,7 +103,10 @@ static int ptcache_bake_all_exec(bContext *C, wmOperator *op) baker.break_test = cache_break_test; baker.break_data = NULL; - if (win) { + /* Disabled for now as this doesn't work properly, + * and pointcache baking will be reimplemented with + * the job system soon anyways. */ + if (win && 0) { baker.progressbar = (void (*)(void *, int))WM_timecursor; baker.progressend = (void (*)(void *))WM_cursor_restore; baker.progresscontext = win; @@ -201,7 +204,10 @@ static int ptcache_bake_exec(bContext *C, wmOperator *op) baker.break_test = cache_break_test; baker.break_data = NULL; - if (win) { + /* Disabled for now as this doesn't work properly, + * and pointcache baking will be reimplemented with + * the job system soon anyways. */ + if (win && 0) { baker.progressbar = (void (*)(void *, int))WM_timecursor; baker.progressend = (void (*)(void *))WM_cursor_restore; baker.progresscontext = win; |