[Bf-blender-cvs] [29c2b70] master: Fixed T35128. Progress bar sync on Windows.
Alexandr Kuznetsov
noreply at git.blender.org
Sun Nov 30 19:34:03 CET 2014
Commit: 29c2b70a2c30a0f06d2eb78a742cb9cf18f481df
Author: Alexandr Kuznetsov
Date: Sun Nov 30 12:52:44 2014 -0500
Branches: master
https://developer.blender.org/rB29c2b70a2c30a0f06d2eb78a742cb9cf18f481df
Fixed T35128. Progress bar sync on Windows.
Apply for all windows instead of active, otherwise progress doesn't update.
===================================================================
M source/blender/windowmanager/intern/wm_jobs.c
===================================================================
diff --git a/source/blender/windowmanager/intern/wm_jobs.c b/source/blender/windowmanager/intern/wm_jobs.c
index 24d8ed0..6bc858e 100644
--- a/source/blender/windowmanager/intern/wm_jobs.c
+++ b/source/blender/windowmanager/intern/wm_jobs.c
@@ -628,17 +628,22 @@ void wm_jobs_timer(const bContext *C, wmWindowManager *wm, wmTimer *wt)
}
}
- /* on file load 'winactive' can be NULL, possibly it should not happen but for now do a NULL check - campbell */
- if (wm->winactive) {
- /* if there are running jobs, set the global progress indicator */
- if (jobs_progress > 0) {
- float progress = total_progress / (float)jobs_progress;
- WM_progress_set(wm->winactive, progress);
- }
- else {
- WM_progress_clear(wm->winactive);
- }
+
+ /* if there are running jobs, set the global progress indicator */
+ if (jobs_progress > 0) {
+ wmWindow *win;
+ float progress = total_progress / (float)jobs_progress;
+
+ for (win = wm->windows.first; win; win = win->next)
+ WM_progress_set(win, progress);
}
+ else {
+ wmWindow *win;
+
+ for (win = wm->windows.first; win; win = win->next)
+ WM_progress_clear(win);
+ }
+
}
bool WM_jobs_has_running(wmWindowManager *wm)
More information about the Bf-blender-cvs
mailing list