summaryrefslogtreecommitdiffstats
path: root/seaudit/progress.c
diff options
context:
space:
mode:
authorMiroslav Grepl <mgrepl@redhat.com>2014-04-11 09:54:44 +0200
committerMiroslav Grepl <mgrepl@redhat.com>2014-04-11 09:54:44 +0200
commit0ce79dd3761d52f34e370f573cd750ae7a578089 (patch)
tree6e1937c3f2634c2e2d2bccec9bf15cfadd1a5423 /seaudit/progress.c
parent47be9ff57e72906660bb62a515222f482131e1fb (diff)
downloadsetools-0ce79dd3761d52f34e370f573cd750ae7a578089.tar.gz
setools-0ce79dd3761d52f34e370f573cd750ae7a578089.tar.xz
setools-0ce79dd3761d52f34e370f573cd750ae7a578089.zip
Merge 3.3.8 upstream setools
Diffstat (limited to 'seaudit/progress.c')
-rw-r--r--seaudit/progress.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/seaudit/progress.c b/seaudit/progress.c
index 01b01fb..2e0abeb 100644
--- a/seaudit/progress.c
+++ b/seaudit/progress.c
@@ -99,10 +99,11 @@ void progress_hide(progress_t * progress)
int progress_wait(progress_t * progress)
{
- GTimeVal wait_time = { 0, 50000 };
+ gint64 end_time;
g_mutex_lock(progress->mutex);
while (!progress->done) {
- g_cond_timed_wait(progress->cond, progress->mutex, &wait_time);
+ end_time = g_get_monotonic_time () + 50000; // need to be set before each wait
+ g_cond_wait_until(progress->cond, progress->mutex, end_time);
if (progress->s != NULL) {
gtk_label_set_text(GTK_LABEL(progress->label2), progress->s);
free(progress->s);