[zenity] [progress] Improve code to update of percentage



commit f0dfc8a82038de334c545a4add70851051dabccc
Author: Lucas Rocha <lucasr gnome org>
Date:   Mon Aug 10 03:22:05 2009 +0100

    [progress] Improve code to update of percentage

 src/progress.c |   17 ++++++++++-------
 1 files changed, 10 insertions(+), 7 deletions(-)
---
diff --git a/src/progress.c b/src/progress.c
index a0868ea..bc1c102 100644
--- a/src/progress.c
+++ b/src/progress.c
@@ -156,21 +156,24 @@ zenity_progress_handle_stdin (GIOChannel   *channel,
           continue;
 
         /* Now try to convert the thing to a number */
-        percentage = atoi (string->str);
-        if (percentage >= 100) {
+        percentage = CLAMP(atoi (string->str), 0, 100);
+
+        gtk_progress_bar_set_fraction (GTK_PROGRESS_BAR (progress_bar),
+                                       percentage / 100.0);
+
+        progress_data->percentage = percentage;
+
+        if (percentage == 100) {
           GObject *button;
+
           button = gtk_builder_get_object(builder, "zenity_progress_ok_button");
-          gtk_progress_bar_set_fraction (GTK_PROGRESS_BAR (progress_bar), 1.0);
-          progress_data->percentage = 100;
           gtk_widget_set_sensitive(GTK_WIDGET (button), TRUE);
           gtk_widget_grab_focus(GTK_WIDGET (button));
+
           if (progress_data->autoclose) {
             zen_data->exit_code = zenity_util_return_exit_code (ZENITY_OK);
             gtk_main_quit();
           }
-        } else {
-          gtk_progress_bar_set_fraction (GTK_PROGRESS_BAR (progress_bar), percentage / 100.0);
-          progress_data->percentage = percentage;
         }
       }
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]