[gimp] plug-ins: set progress to 1.0 when done



commit 8ff66342b866481c6a3d5bd61954d5f83795a026
Author: Mikael Magnusson <mikachu src gnome org>
Date:   Sun Apr 10 19:05:08 2011 +0200

    plug-ins: set progress to 1.0 when done

 plug-ins/color-rotate/color-rotate.c         |    1 +
 plug-ins/common/animation-optimize.c         |    1 +
 plug-ins/common/antialias.c                  |    2 +-
 plug-ins/common/apply-canvas.c               |    1 +
 plug-ins/common/blinds.c                     |    1 +
 plug-ins/common/blur-gauss-selective.c       |    1 +
 plug-ins/common/blur-gauss.c                 |    1 +
 plug-ins/common/bump-map.c                   |    1 +
 plug-ins/common/cartoon.c                    |    1 +
 plug-ins/common/color-exchange.c             |    1 +
 plug-ins/common/compose.c                    |    1 +
 plug-ins/common/convolution-matrix.c         |    1 +
 plug-ins/common/curve-bend.c                 |    1 +
 plug-ins/common/decompose.c                  |    1 +
 plug-ins/common/deinterlace.c                |    1 +
 plug-ins/common/depth-merge.c                |    1 +
 plug-ins/common/destripe.c                   |    1 +
 plug-ins/common/displace.c                   |    1 +
 plug-ins/common/edge-laplace.c               |    1 +
 plug-ins/common/edge-neon.c                  |    1 +
 plug-ins/common/edge-sobel.c                 |    1 +
 plug-ins/common/engrave.c                    |    1 +
 plug-ins/common/file-cel.c                   |    2 ++
 plug-ins/common/file-dicom.c                 |    1 +
 plug-ins/common/file-gif-load.c              |    1 +
 plug-ins/common/file-gif-save.c              |   17 +++++++++--------
 plug-ins/common/file-html-table.c            |    1 +
 plug-ins/common/file-pat.c                   |    1 +
 plug-ins/common/file-pcx.c                   |    2 ++
 plug-ins/common/file-pdf-load.c              |    3 ++-
 plug-ins/common/file-pix.c                   |    3 +++
 plug-ins/common/file-png.c                   |    2 ++
 plug-ins/common/file-ps.c                    |    6 ++++++
 plug-ins/common/file-raw.c                   |    1 +
 plug-ins/common/file-sunras.c                |    1 +
 plug-ins/common/file-tga.c                   |    2 ++
 plug-ins/common/file-xbm.c                   |    2 ++
 plug-ins/common/file-xmc.c                   |    2 ++
 plug-ins/common/file-xpm.c                   |    2 ++
 plug-ins/common/file-xwd.c                   |    3 +++
 plug-ins/common/film.c                       |    1 +
 plug-ins/common/grid.c                       |    1 +
 plug-ins/common/hot.c                        |    1 +
 plug-ins/common/iwarp.c                      |    2 ++
 plug-ins/common/jigsaw.c                     |    1 +
 plug-ins/common/lens-apply.c                 |    1 +
 plug-ins/common/lens-flare.c                 |    1 +
 plug-ins/common/newsprint.c                  |    1 +
 plug-ins/common/nl-filter.c                  |    1 +
 plug-ins/common/nova.c                       |    2 ++
 plug-ins/common/oilify.c                     |    1 +
 plug-ins/common/photocopy.c                  |    1 +
 plug-ins/common/pixelize.c                   |    2 ++
 plug-ins/common/plasma.c                     |    2 ++
 plug-ins/common/qbist.c                      |    1 +
 plug-ins/common/red-eye-removal.c            |    1 +
 plug-ins/common/sample-colorize.c            |    2 ++
 plug-ins/common/sharpen.c                    |    1 +
 plug-ins/common/shift.c                      |    1 +
 plug-ins/common/sinus.c                      |    1 +
 plug-ins/common/smooth-palette.c             |    1 +
 plug-ins/common/softglow.c                   |    1 +
 plug-ins/common/sphere-designer.c            |    1 +
 plug-ins/common/tile-glass.c                 |    1 +
 plug-ins/common/tile-paper.c                 |    1 +
 plug-ins/common/tile-seamless.c              |    1 +
 plug-ins/common/tile-small.c                 |    1 +
 plug-ins/common/tile.c                       |    1 +
 plug-ins/common/van-gogh-lic.c               |    1 +
 plug-ins/common/warp.c                       |    3 +++
 plug-ins/common/whirl-pinch.c                |    1 +
 plug-ins/common/wind.c                       |    2 ++
 plug-ins/file-bmp/bmp-read.c                 |    2 +-
 plug-ins/file-bmp/bmp-write.c                |    2 +-
 plug-ins/file-fits/fits.c                    |    3 +++
 plug-ins/file-fli/fli-gimp.c                 |    2 ++
 plug-ins/file-sgi/sgi.c                      |    4 +++-
 plug-ins/file-uri/uri-backend-gvfs.c         |    1 +
 plug-ins/file-xjt/xjpeg.c                    |    4 ++++
 plug-ins/flame/flame.c                       |    1 +
 plug-ins/fractal-explorer/fractal-explorer.c |    1 +
 plug-ins/gimpressionist/gimp.c               |    1 +
 plug-ins/gradient-flare/gradient-flare.c     |    1 +
 plug-ins/lighting/lighting-apply.c           |    2 ++
 plug-ins/map-object/map-object-apply.c       |    1 +
 plug-ins/maze/maze-algorithms.c              |    2 ++
 plug-ins/maze/maze.c                         |    1 +
 plug-ins/pagecurl/pagecurl.c                 |    2 ++
 plug-ins/print/print-draw-page.c             |    2 ++
 plug-ins/selection-to-path/pxl-outline.c     |    2 ++
 90 files changed, 136 insertions(+), 13 deletions(-)
---
diff --git a/plug-ins/color-rotate/color-rotate.c b/plug-ins/color-rotate/color-rotate.c
index 10a572b..7101c42 100644
--- a/plug-ins/color-rotate/color-rotate.c
+++ b/plug-ins/color-rotate/color-rotate.c
@@ -269,6 +269,7 @@ color_rotate (GimpDrawable *drawable)
 
   /*  update the processed region  */
 
+  gimp_progress_update (1.0);
   gimp_drawable_flush (drawable);
   gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
   gimp_drawable_update (drawable->drawable_id, x1, y1, (x2 - x1), (y2 - y1));
diff --git a/plug-ins/common/animation-optimize.c b/plug-ins/common/animation-optimize.c
index bdc7fd5..bf0b7b0 100644
--- a/plug-ins/common/animation-optimize.c
+++ b/plug-ins/common/animation-optimize.c
@@ -1087,6 +1087,7 @@ do_optimizations (GimpRunMode run_mode,
           gimp_progress_update (((gdouble) this_frame_num + 1.0) /
                                 ((gdouble) total_frames));
         }
+      gimp_progress_update (1.0);
     }
 
   gimp_image_undo_enable (new_image_id);
diff --git a/plug-ins/common/antialias.c b/plug-ins/common/antialias.c
index dd6e127..69a7cac 100644
--- a/plug-ins/common/antialias.c
+++ b/plug-ins/common/antialias.c
@@ -313,7 +313,7 @@ render (GimpDrawable *drawable)
         gimp_progress_update ((gdouble) row / (gdouble) h);
     }
 
-  gimp_progress_update ((gdouble) 100);
+  gimp_progress_update (1.0);
   gimp_drawable_flush (drawable);
   gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
   gimp_drawable_update (drawable->drawable_id, x, y, w, h);
diff --git a/plug-ins/common/apply-canvas.c b/plug-ins/common/apply-canvas.c
index ec0e551..abd71e0 100644
--- a/plug-ins/common/apply-canvas.c
+++ b/plug-ins/common/apply-canvas.c
@@ -1507,6 +1507,7 @@ strucpi (GimpDrawable *drawable,
     }
   else
     {
+      gimp_progress_update (1.0);
       /*  update the textured region  */
       gimp_drawable_flush (drawable);
       gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
diff --git a/plug-ins/common/blinds.c b/plug-ins/common/blinds.c
index 9da855b..c87d077 100644
--- a/plug-ins/common/blinds.c
+++ b/plug-ins/common/blinds.c
@@ -713,6 +713,7 @@ apply_blinds (GimpDrawable *drawable)
   g_free (src_rows);
   g_free (des_rows);
 
+  gimp_progress_update (1.0);
   gimp_drawable_flush (drawable);
   gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
   gimp_drawable_update (drawable->drawable_id,
diff --git a/plug-ins/common/blur-gauss-selective.c b/plug-ins/common/blur-gauss-selective.c
index 0e5110e..3431f04 100644
--- a/plug-ins/common/blur-gauss-selective.c
+++ b/plug-ins/common/blur-gauss-selective.c
@@ -763,6 +763,7 @@ sel_gauss (GimpDrawable *drawable,
 
   matrixmult (src, dest, width, height, mat, numrad,
               bytes, has_alpha, maxdelta, FALSE);
+  gimp_progress_update (1.0);
 
   gimp_pixel_rgn_init (&dest_rgn,
                        drawable, x, y, width, height, TRUE, TRUE);
diff --git a/plug-ins/common/blur-gauss.c b/plug-ins/common/blur-gauss.c
index 37f3d0a..b74aef9 100644
--- a/plug-ins/common/blur-gauss.c
+++ b/plug-ins/common/blur-gauss.c
@@ -1475,6 +1475,7 @@ gauss (GimpDrawable *drawable,
     }
   else
     {
+      gimp_progress_update (1.0);
       /*  merge the shadow, update the drawable  */
       gimp_drawable_flush (drawable);
       gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
diff --git a/plug-ins/common/bump-map.c b/plug-ins/common/bump-map.c
index 6f1ffbe..3b3c540 100644
--- a/plug-ins/common/bump-map.c
+++ b/plug-ins/common/bump-map.c
@@ -524,6 +524,7 @@ bumpmap (void)
     }
 
   /* Done */
+  gimp_progress_update (1.0);
 
   g_free (bm_row1);
   g_free (bm_row2);
diff --git a/plug-ins/common/cartoon.c b/plug-ins/common/cartoon.c
index 3b37e57..5dd076d 100644
--- a/plug-ins/common/cartoon.c
+++ b/plug-ins/common/cartoon.c
@@ -592,6 +592,7 @@ cartoon (GimpDrawable *drawable,
     }
   else
     {
+      gimp_progress_update (1.0);
       /*  merge the shadow, update the drawable  */
       gimp_drawable_flush (drawable);
       gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
diff --git a/plug-ins/common/color-exchange.c b/plug-ins/common/color-exchange.c
index f465994..0f8d746 100644
--- a/plug-ins/common/color-exchange.c
+++ b/plug-ins/common/color-exchange.c
@@ -777,6 +777,7 @@ exchange (GimpDrawable *drawable,
     }
   else
     {
+      gimp_progress_update (1.0);
       /* update the processed region */
       gimp_drawable_flush (drawable);
       gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
diff --git a/plug-ins/common/compose.c b/plug-ins/common/compose.c
index cc322c8..6a0153c 100644
--- a/plug-ins/common/compose.c
+++ b/plug-ins/common/compose.c
@@ -885,6 +885,7 @@ compose (const gchar  *compose_type,
 
       gimp_progress_update ((gdouble) i / (gdouble) height);
     }
+  gimp_progress_update (1.0);
 
   for (j = 0; j < num_images; j++)
     {
diff --git a/plug-ins/common/convolution-matrix.c b/plug-ins/common/convolution-matrix.c
index a68741e..562787b 100644
--- a/plug-ins/common/convolution-matrix.c
+++ b/plug-ins/common/convolution-matrix.c
@@ -674,6 +674,7 @@ convolve_image (GimpDrawable *drawable,
     }
   else
     {
+      gimp_progress_update (1.0);
       gimp_drawable_flush (drawable);
       gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
       gimp_drawable_update (drawable->drawable_id,
diff --git a/plug-ins/common/curve-bend.c b/plug-ins/common/curve-bend.c
index 9917efd..54ddca9 100644
--- a/plug-ins/common/curve-bend.c
+++ b/plug-ins/common/curve-bend.c
@@ -3192,6 +3192,7 @@ p_vertical_bend (BenderDialog *cd,
             }
         }
     }
+  gimp_progress_update (1.0);
 
   g_free (last_arr);
   g_free (first_arr);
diff --git a/plug-ins/common/decompose.c b/plug-ins/common/decompose.c
index 052e9a6..a0a5236 100644
--- a/plug-ins/common/decompose.c
+++ b/plug-ins/common/decompose.c
@@ -646,6 +646,7 @@ decompose (gint32       image_ID,
 
       gimp_progress_update ((gdouble) i / (gdouble) height);
     }
+  gimp_progress_update (1.0);
 
   g_free (src);
 
diff --git a/plug-ins/common/deinterlace.c b/plug-ins/common/deinterlace.c
index 35c6a01..a5f18f0 100644
--- a/plug-ins/common/deinterlace.c
+++ b/plug-ins/common/deinterlace.c
@@ -295,6 +295,7 @@ deinterlace (GimpDrawable *drawable,
     }
   else
     {
+      gimp_progress_update (1.0);
       /*  update the deinterlaced region  */
       gimp_drawable_flush (drawable);
       gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
diff --git a/plug-ins/common/depth-merge.c b/plug-ins/common/depth-merge.c
index feb4f95..c4c9cbd 100644
--- a/plug-ins/common/depth-merge.c
+++ b/plug-ins/common/depth-merge.c
@@ -523,6 +523,7 @@ DepthMerge_execute (DepthMerge *dm)
   g_free (depthMap2Row);
   g_free (tempRow);
 
+  gimp_progress_update (1.0);
   gimp_drawable_flush (dm->resultDrawable);
   gimp_drawable_merge_shadow (dm->resultDrawable->drawable_id, TRUE);
   gimp_drawable_update (dm->resultDrawable->drawable_id,
diff --git a/plug-ins/common/destripe.c b/plug-ins/common/destripe.c
index 1ce3b2d..def88e7 100644
--- a/plug-ins/common/destripe.c
+++ b/plug-ins/common/destripe.c
@@ -413,6 +413,7 @@ destripe (GimpDrawable *drawable,
     }
   else
     {
+      gimp_progress_update (1.0);
       gimp_drawable_flush (drawable);
       gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
       gimp_drawable_update (drawable->drawable_id,
diff --git a/plug-ins/common/displace.c b/plug-ins/common/displace.c
index e33db53..f8dc5c7 100644
--- a/plug-ins/common/displace.c
+++ b/plug-ins/common/displace.c
@@ -765,6 +765,7 @@ displace (GimpDrawable *drawable,
     }
   else
     {
+      gimp_progress_update (1.0);
       /*  update the region  */
       gimp_drawable_flush (drawable);
       gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
diff --git a/plug-ins/common/edge-laplace.c b/plug-ins/common/edge-laplace.c
index b7eb268..d03f447 100644
--- a/plug-ins/common/edge-laplace.c
+++ b/plug-ins/common/edge-laplace.c
@@ -369,6 +369,7 @@ laplace (GimpDrawable *drawable)
         gimp_progress_update ((gdouble) row / (gdouble) (y2 - y1));
     }
 
+  gimp_progress_update (1.0);
   /*  update the laplaced region  */
   gimp_drawable_flush (drawable);
   gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
diff --git a/plug-ins/common/edge-neon.c b/plug-ins/common/edge-neon.c
index 0256e8f..40fc24c 100644
--- a/plug-ins/common/edge-neon.c
+++ b/plug-ins/common/edge-neon.c
@@ -490,6 +490,7 @@ neon (GimpDrawable *drawable,
     }
   else
     {
+      gimp_progress_update (1.0);
       /*  now, merge horizontal and vertical into a magnitude  */
       gimp_pixel_rgn_init (&src_rgn, drawable,
                            0, 0, drawable->width, drawable->height,
diff --git a/plug-ins/common/edge-sobel.c b/plug-ins/common/edge-sobel.c
index 44c00a0..3847491 100644
--- a/plug-ins/common/edge-sobel.c
+++ b/plug-ins/common/edge-sobel.c
@@ -470,6 +470,7 @@ sobel (GimpDrawable *drawable,
     }
   else
     {
+      gimp_progress_update (1.0);
       /*  update the sobeled region  */
       gimp_drawable_flush (drawable);
       gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
diff --git a/plug-ins/common/engrave.c b/plug-ins/common/engrave.c
index 5e33b55..f7f6d5a 100644
--- a/plug-ins/common/engrave.c
+++ b/plug-ins/common/engrave.c
@@ -501,6 +501,7 @@ engrave_small (GimpDrawable *drawable,
     }
   else
     {
+      gimp_progress_update (1.0);
       gimp_drawable_flush (drawable);
       gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
       gimp_drawable_update (drawable->drawable_id, x1, y1, x2 - x1, y2 - y1);
diff --git a/plug-ins/common/file-cel.c b/plug-ins/common/file-cel.c
index b353761..7af737f 100644
--- a/plug-ins/common/file-cel.c
+++ b/plug-ins/common/file-cel.c
@@ -448,6 +448,7 @@ load_image (const gchar  *file,
       gimp_pixel_rgn_set_rect (&pixel_rgn, line, 0, i, drawable->width, 1);
       gimp_progress_update ((float) i / (float) height);
     }
+  gimp_progress_update (1.0);
 
   /* Close image files, give back allocated memory */
 
@@ -674,6 +675,7 @@ save_image (const gchar  *file,
 
       gimp_progress_update ((float) i / (float) drawable->height);
     }
+  gimp_progress_update (1.0);
 
   /* Close files, give back allocated memory */
   fclose (fp);
diff --git a/plug-ins/common/file-dicom.c b/plug-ins/common/file-dicom.c
index 91033ce..773cfe6 100644
--- a/plug-ins/common/file-dicom.c
+++ b/plug-ins/common/file-dicom.c
@@ -756,6 +756,7 @@ dicom_loader (guint8       *pix_buffer,
       gimp_pixel_rgn_set_rect (pixel_rgn, data, 0, row_idx, width, scanlines);
       row_idx += scanlines;
     }
+  gimp_progress_update (1.0);
 
   g_free (data);
 }
diff --git a/plug-ins/common/file-gif-load.c b/plug-ins/common/file-gif-load.c
index 621f4b2..f6fff6c 100644
--- a/plug-ins/common/file-gif-load.c
+++ b/plug-ins/common/file-gif-load.c
@@ -1152,6 +1152,7 @@ ReadImage (FILE        *fd,
   if (LZWReadByte (fd, FALSE, c) >= 0)
     g_print ("GIF: too much input data, ignoring extra...\n");
 
+  gimp_progress_update (1.0);
   gimp_pixel_rgn_init (&pixel_rgn, drawable,
                        0, 0, drawable->width, drawable->height, TRUE, FALSE);
   gimp_pixel_rgn_set_rect (&pixel_rgn, dest,
diff --git a/plug-ins/common/file-gif-save.c b/plug-ins/common/file-gif-save.c
index 33d5bbe..6f2dc20 100644
--- a/plug-ins/common/file-gif-save.c
+++ b/plug-ins/common/file-gif-save.c
@@ -942,16 +942,17 @@ save_image (const gchar *filename,
                                           get_pixel);
         }
 
-     gif_encode_image_data (outfile, cols, rows,
-                            (rows > 4) ? gsvals.interlace : 0,
-                            useBPP,
-                            get_pixel,
-                            offset_x, offset_y);
+      gif_encode_image_data (outfile, cols, rows,
+                             (rows > 4) ? gsvals.interlace : 0,
+                             useBPP,
+                             get_pixel,
+                             offset_x, offset_y);
+      gimp_progress_update (1.0);
 
-     gimp_drawable_detach (drawable);
+      gimp_drawable_detach (drawable);
 
-     g_free (pixels);
-  }
+      g_free (pixels);
+    }
 
   g_free(layers);
 
diff --git a/plug-ins/common/file-html-table.c b/plug-ins/common/file-html-table.c
index 3f9e86f..fcd999c 100644
--- a/plug-ins/common/file-html-table.c
+++ b/plug-ins/common/file-html-table.c
@@ -374,6 +374,7 @@ save_image (const gchar   *filename,
 
       gimp_progress_update ((double) y / (double) rows);
     }
+  gimp_progress_update (1.0);
 
   if (gtmvals.fulldoc)
     fprintf (fp, "</TABLE></BODY></HTML>\n");
diff --git a/plug-ins/common/file-pat.c b/plug-ins/common/file-pat.c
index 8d7b042..7c12dc0 100644
--- a/plug-ins/common/file-pat.c
+++ b/plug-ins/common/file-pat.c
@@ -458,6 +458,7 @@ load_image (const gchar  *filename,
 
       gimp_progress_update ((gdouble) line / (gdouble) ph.height);
     }
+  gimp_progress_update (1.0);
 
   gimp_drawable_flush (drawable);
 
diff --git a/plug-ins/common/file-pcx.c b/plug-ins/common/file-pcx.c
index eb432f9..2666979 100644
--- a/plug-ins/common/file-pcx.c
+++ b/plug-ins/common/file-pcx.c
@@ -468,6 +468,8 @@ load_image (const gchar  *filename,
       return -1;
     }
 
+  gimp_progress_update (1.0);
+
   gimp_pixel_rgn_init (&pixel_rgn, drawable, 0, 0, width, height, TRUE, FALSE);
   gimp_pixel_rgn_set_rect (&pixel_rgn, dest, 0, 0, width, height);
 
diff --git a/plug-ins/common/file-pdf-load.c b/plug-ins/common/file-pdf-load.c
index b74ec04..c2d5512 100644
--- a/plug-ins/common/file-pdf-load.c
+++ b/plug-ins/common/file-pdf-load.c
@@ -665,7 +665,8 @@ load_image (PopplerDocument        *doc,
 
           image_ID = 0;
         }
-   }
+    }
+  gimp_progress_update (1.0);
 
   if (image_ID)
     {
diff --git a/plug-ins/common/file-pix.c b/plug-ins/common/file-pix.c
index e3acef7..6b258e1 100644
--- a/plug-ins/common/file-pix.c
+++ b/plug-ins/common/file-pix.c
@@ -475,6 +475,8 @@ load_image (const gchar  *filename,
       g_free (dest_base);
     }
 
+  gimp_progress_update (1.0);
+
   gimp_drawable_flush (drawable);
   gimp_drawable_detach (drawable);
 
@@ -636,6 +638,7 @@ save_image (const gchar  *filename,
           gimp_progress_update ((double) i / (double) drawable->height);
         }
     }
+  gimp_progress_update (1.0);
 
   g_free (src_base);
 
diff --git a/plug-ins/common/file-png.c b/plug-ins/common/file-png.c
index 65f01c4..a94798f 100644
--- a/plug-ins/common/file-png.c
+++ b/plug-ins/common/file-png.c
@@ -1565,6 +1565,8 @@ save_image (const gchar  *filename,
         }
     }
 
+  gimp_progress_update (1.0);
+
   png_write_end (pp, info);
   png_destroy_write_struct (&pp, &info);
 
diff --git a/plug-ins/common/file-ps.c b/plug-ins/common/file-ps.c
index b4157cc..ab7e109 100644
--- a/plug-ins/common/file-ps.c
+++ b/plug-ins/common/file-ps.c
@@ -2128,6 +2128,7 @@ load_ps (const gchar *filename,
           if (err) break;
         }
     }
+  gimp_progress_update (1.0);
 
   g_free (data);
   g_free (byteline);
@@ -2498,6 +2499,7 @@ save_ps_preview (FILE   *ofp,
       if ((y % 20) == 0)
         gimp_progress_update ((double)(y) / (double)height);
     }
+  gimp_progress_update (1.0);
 
   fprintf (ofp, "%%%%EndPreview\n");
 
@@ -2581,6 +2583,7 @@ save_gray  (FILE   *ofp,
       if ((i % 20) == 0)
         gimp_progress_update ((double) i / (double) height);
     }
+  gimp_progress_update (1.0);
 
   if (level2)
     {
@@ -2710,6 +2713,7 @@ save_bw (FILE   *ofp,
       if ((i % 20) == 0)
         gimp_progress_update ((double) i / (double) height);
     }
+  gimp_progress_update (1.0);
 
   if (level2)
     {
@@ -2865,6 +2869,7 @@ save_index (FILE   *ofp,
       if ((i % 20) == 0)
         gimp_progress_update ((double) i / (double) height);
     }
+  gimp_progress_update (1.0);
 
   ps_end_data (ofp);
   fprintf (ofp, "showpage\n");
@@ -2994,6 +2999,7 @@ save_rgb (FILE   *ofp,
       if ((i % 20) == 0)
         gimp_progress_update ((double) i / (double) height);
     }
+  gimp_progress_update (1.0);
 
   ps_end_data (ofp);
   fprintf (ofp, "showpage\n");
diff --git a/plug-ins/common/file-raw.c b/plug-ins/common/file-raw.c
index f9ba5a1..dc1ba9d 100644
--- a/plug-ins/common/file-raw.c
+++ b/plug-ins/common/file-raw.c
@@ -482,6 +482,7 @@ raw_load_planar (RawGimpData *data)
       gimp_pixel_rgn_set_row (&data->region, row, 0, i, runtime->image_width);
       gimp_progress_update ((gfloat) i / (gfloat) runtime->image_height);
     }
+  gimp_progress_update (1.0);
 
   g_free (row);
   g_free (r_row);
diff --git a/plug-ins/common/file-sunras.c b/plug-ins/common/file-sunras.c
index 00898b6..0b5e796 100644
--- a/plug-ins/common/file-sunras.c
+++ b/plug-ins/common/file-sunras.c
@@ -509,6 +509,7 @@ load_image (const gchar  *filename,
       image_ID = -1;
       break;
     }
+  gimp_progress_update (1.0);
 
   fclose (ifp);
 
diff --git a/plug-ins/common/file-tga.c b/plug-ins/common/file-tga.c
index 0e1094c..bc7e826 100644
--- a/plug-ins/common/file-tga.c
+++ b/plug-ins/common/file-tga.c
@@ -1118,6 +1118,7 @@ ReadImage (FILE        *fp,
                                    info->width, tileheight);
         }
     }
+  gimp_progress_update (1.0);
 
   g_free (data);
   g_free (buffer);
@@ -1340,6 +1341,7 @@ save_image (const gchar  *filename,
       if (row % 16 == 0)
         gimp_progress_update ((gdouble) row / (gdouble) height);
     }
+  gimp_progress_update (1.0);
 
   gimp_drawable_detach (drawable);
 
diff --git a/plug-ins/common/file-xbm.c b/plug-ins/common/file-xbm.c
index a66be1f..ef73778 100644
--- a/plug-ins/common/file-xbm.c
+++ b/plug-ins/common/file-xbm.c
@@ -946,6 +946,7 @@ load_image (const gchar  *filename,
       gimp_progress_update ((double) (i + tileheight) / (double) height);
       gimp_pixel_rgn_set_rect (&pixel_rgn, data, 0, i, width, tileheight);
     }
+  gimp_progress_update (1.0);
 
   g_free (data);
 
@@ -1162,6 +1163,7 @@ save_image (const gchar  *filename,
 
       gimp_progress_update ((double) (i + tileheight) / (double) height);
     }
+  gimp_progress_update (1.0);
 
   /* Write the trailer. */
   fprintf (fp, " };\n");
diff --git a/plug-ins/common/file-xmc.c b/plug-ins/common/file-xmc.c
index 4d1ae81..f399b64 100644
--- a/plug-ins/common/file-xmc.c
+++ b/plug-ins/common/file-xmc.c
@@ -769,6 +769,7 @@ load_image (const gchar *filename, GError **error)
 
       gimp_progress_update ( (i + 1) / imagesp->nimage);
     }
+  gimp_progress_update (1.0);
   /* free temporary buffer */
   g_free(tmppixel);
 
@@ -1655,6 +1656,7 @@ save_image (const gchar *filename,
 
       gimp_progress_update ((i + 1) / imagesp->nimage);
     }
+  gimp_progress_update (1.0);
 
   /*
    * comment parsing
diff --git a/plug-ins/common/file-xpm.c b/plug-ins/common/file-xpm.c
index 4e9e976..2a8ed67 100644
--- a/plug-ins/common/file-xpm.c
+++ b/plug-ins/common/file-xpm.c
@@ -521,6 +521,7 @@ parse_image (gint32    image_ID,
                                drawable->width, scanlines);
 
     }
+  gimp_progress_update (1.0);
 
   g_free(buf);
 
@@ -704,6 +705,7 @@ save_image (const gchar  *filename,
           gimp_progress_update ((gdouble) (i+j) / (gdouble) height);
         }
     }
+  gimp_progress_update (1.0);
 
   g_free (buffer);
 
diff --git a/plug-ins/common/file-xwd.c b/plug-ins/common/file-xwd.c
index 22b16dd..cba54f2 100644
--- a/plug-ins/common/file-xwd.c
+++ b/plug-ins/common/file-xwd.c
@@ -563,6 +563,7 @@ load_image (const gchar  *filename,
         }
       break;
     }
+  gimp_progress_update (1.0);
 
   fclose (ifp);
 
@@ -632,6 +633,8 @@ save_image (const gchar  *filename,
   else
     retval = FALSE;
 
+  gimp_progress_update (1.0);
+
   fclose (ofp);
 
   return retval;
diff --git a/plug-ins/common/film.c b/plug-ins/common/film.c
index 85138e0..af18cd9 100644
--- a/plug-ins/common/film.c
+++ b/plug-ins/common/film.c
@@ -518,6 +518,7 @@ film (void)
       g_free (layers);
       gimp_image_delete (image_ID_tmp);
     }
+  gimp_progress_update (1.0);
 
   gimp_image_flatten (image_ID_dst);
 
diff --git a/plug-ins/common/grid.c b/plug-ins/common/grid.c
index f6bbfd7..88f1e01 100644
--- a/plug-ins/common/grid.c
+++ b/plug-ins/common/grid.c
@@ -502,6 +502,7 @@ grid (gint32        image_ID,
     }
   else
     {
+      gimp_progress_update (1.0);
       gimp_drawable_flush (drawable);
       gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
       gimp_drawable_update (drawable->drawable_id,
diff --git a/plug-ins/common/hot.c b/plug-ins/common/hot.c
index 905f1ce..e157dd7 100644
--- a/plug-ins/common/hot.c
+++ b/plug-ins/common/hot.c
@@ -548,6 +548,7 @@ pluginCore (piArgs *argp)
             }
         }
     }
+  gimp_progress_update (1.0);
 
   gimp_pixel_rgn_set_rect (&dstPr, dst, sel_x1, sel_y1, width, height);
 
diff --git a/plug-ins/common/iwarp.c b/plug-ins/common/iwarp.c
index acdc83c..e8a4657 100644
--- a/plug-ins/common/iwarp.c
+++ b/plug-ins/common/iwarp.c
@@ -752,6 +752,7 @@ iwarp_frame (void)
                              &progress, max_progress);
         }
     }
+  gimp_progress_update (1.0);
 
   gimp_drawable_flush (destdrawable);
   gimp_drawable_merge_shadow (destdrawable->drawable_id, TRUE);
@@ -831,6 +832,7 @@ iwarp (void)
 
               gimp_image_insert_layer (imageID, layerID, -1, 0);
             }
+          gimp_progress_update (1.0);
         }
       g_free (animlayers);
     }
diff --git a/plug-ins/common/jigsaw.c b/plug-ins/common/jigsaw.c
index c4d2016..d509a50 100644
--- a/plug-ins/common/jigsaw.c
+++ b/plug-ins/common/jigsaw.c
@@ -602,6 +602,7 @@ draw_jigsaw (guchar   *buffer,
       printf("draw_jigsaw: bad style\n");
       gimp_quit ();
     }
+  gimp_progress_update (1.0);
 
   g_free (globals.gridx);
   g_free (globals.gridy);
diff --git a/plug-ins/common/lens-apply.c b/plug-ins/common/lens-apply.c
index d80e332..f38764e 100644
--- a/plug-ins/common/lens-apply.c
+++ b/plug-ins/common/lens-apply.c
@@ -362,6 +362,7 @@ drawlens (GimpDrawable *drawable,
     }
   else
     {
+      gimp_progress_update (1.0);
       gimp_pixel_rgn_set_rect (&destPR, dest, x1, y1,
                                regionwidth, regionheight);
 
diff --git a/plug-ins/common/lens-flare.c b/plug-ins/common/lens-flare.c
index db2f535..3f97de8 100644
--- a/plug-ins/common/lens-flare.c
+++ b/plug-ins/common/lens-flare.c
@@ -472,6 +472,7 @@ FlareFX (GimpDrawable *drawable,
     }
   else
     {
+      gimp_progress_update (1.0);
       /*  update the textured region  */
       gimp_drawable_flush (drawable);
       gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
diff --git a/plug-ins/common/newsprint.c b/plug-ins/common/newsprint.c
index bd3faba..3c97c47 100644
--- a/plug-ins/common/newsprint.c
+++ b/plug-ins/common/newsprint.c
@@ -2064,6 +2064,7 @@ do {                                                            \
     }
   else
     {
+      gimp_progress_update (1.0);
       /* update the affected region */
       gimp_drawable_flush (drawable);
       gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
diff --git a/plug-ins/common/nl-filter.c b/plug-ins/common/nl-filter.c
index 4c5a235..d391aa6 100644
--- a/plug-ins/common/nl-filter.c
+++ b/plug-ins/common/nl-filter.c
@@ -990,6 +990,7 @@ nlfilter (GimpDrawable *drawable,
     }
   else
     {
+      gimp_progress_update (1.0);
       gimp_drawable_flush (drawable);
       gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
       gimp_drawable_update (drawable->drawable_id, x1, y1, width, height);
diff --git a/plug-ins/common/nova.c b/plug-ins/common/nova.c
index e0b286d..ff7a19c 100644
--- a/plug-ins/common/nova.c
+++ b/plug-ins/common/nova.c
@@ -980,6 +980,8 @@ nova (GimpDrawable *drawable,
            gimp_progress_update ((gdouble) progress / (gdouble) max_progress);
          }
 
+       gimp_progress_update (1.0);
+
        gimp_drawable_flush (drawable);
        gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
        gimp_drawable_update (drawable->drawable_id,
diff --git a/plug-ins/common/oilify.c b/plug-ins/common/oilify.c
index c357e81..846d2a5 100644
--- a/plug-ins/common/oilify.c
+++ b/plug-ins/common/oilify.c
@@ -731,6 +731,7 @@ oilify (GimpDrawable *drawable,
 
   if (!preview)
     {
+      gimp_progress_update (1.0);
       /*  Update the oil-painted region  */
       gimp_drawable_flush (drawable);
       gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
diff --git a/plug-ins/common/photocopy.c b/plug-ins/common/photocopy.c
index 7443421..b8ff649 100644
--- a/plug-ins/common/photocopy.c
+++ b/plug-ins/common/photocopy.c
@@ -617,6 +617,7 @@ photocopy (GimpDrawable *drawable,
 
   if (! preview)
     {
+      gimp_progress_update (1.0);
       /*  merge the shadow, update the drawable  */
       gimp_drawable_flush (drawable);
       gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
diff --git a/plug-ins/common/pixelize.c b/plug-ins/common/pixelize.c
index 5fd44bb..885bf82 100644
--- a/plug-ins/common/pixelize.c
+++ b/plug-ins/common/pixelize.c
@@ -610,6 +610,7 @@ pixelize_large (GimpDrawable *drawable,
     }
   else
     {
+      gimp_progress_update (1.0);
       /*  update the blurred region      */
       gimp_drawable_flush (drawable);
       gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
@@ -687,6 +688,7 @@ pixelize_small (GimpDrawable *drawable,
 
   g_free(area.data);
 
+  gimp_progress_update (1.0);
   /*  update the pixelized region  */
   gimp_drawable_flush (drawable);
   gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
diff --git a/plug-ins/common/plasma.c b/plug-ins/common/plasma.c
index a9a72a1..6377104 100644
--- a/plug-ins/common/plasma.c
+++ b/plug-ins/common/plasma.c
@@ -411,6 +411,8 @@ plasma (GimpDrawable *drawable,
         {
           depth++;
         }
+      if (pft)
+        gimp_progress_update (1.0);
     }
 
   end_plasma (drawable, pft, gr);
diff --git a/plug-ins/common/qbist.c b/plug-ins/common/qbist.c
index f2e6cbd..afcadab 100644
--- a/plug-ins/common/qbist.c
+++ b/plug-ins/common/qbist.c
@@ -539,6 +539,7 @@ run (const gchar      *name,
                                     (gfloat) (sel_y2 - sel_y1));
             }
 
+          gimp_progress_update (1.0);
           gimp_drawable_flush (drawable);
           gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
           gimp_drawable_update (drawable->drawable_id,
diff --git a/plug-ins/common/red-eye-removal.c b/plug-ins/common/red-eye-removal.c
index 6716a1a..7092c47 100644
--- a/plug-ins/common/red-eye-removal.c
+++ b/plug-ins/common/red-eye-removal.c
@@ -324,6 +324,7 @@ remove_redeye (GimpDrawable *drawable)
         gimp_progress_update ((gdouble) progress / (gdouble) max_progress);
     }
 
+  gimp_progress_update (1.0);
   gimp_drawable_flush (drawable);
   gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
   gimp_drawable_update (drawable->drawable_id, x, y, width, height);
diff --git a/plug-ins/common/sample-colorize.c b/plug-ins/common/sample-colorize.c
index 4310ee8..6392139 100644
--- a/plug-ins/common/sample-colorize.c
+++ b/plug-ins/common/sample-colorize.c
@@ -2736,6 +2736,8 @@ sample_analyze (t_GDRW *sample_gdrw)
             }
         }
     }
+  if (g_show_progress)
+    gimp_progress_update (1.0);
 
   if (g_Sdebug)
     printf ("ROWS: %d - %d  COLS: %d - %d\n",
diff --git a/plug-ins/common/sharpen.c b/plug-ins/common/sharpen.c
index b20189d..d86b188 100644
--- a/plug-ins/common/sharpen.c
+++ b/plug-ins/common/sharpen.c
@@ -448,6 +448,7 @@ sharpen (GimpDrawable *drawable)
    * Update the screen...
    */
 
+  gimp_progress_update (1.0);
   gimp_drawable_flush (drawable);
   gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
   gimp_drawable_update (drawable->drawable_id,
diff --git a/plug-ins/common/shift.c b/plug-ins/common/shift.c
index fcf5acb..615812d 100644
--- a/plug-ins/common/shift.c
+++ b/plug-ins/common/shift.c
@@ -327,6 +327,7 @@ shift (GimpDrawable *drawable,
 
   if (! preview)
     {
+      gimp_progress_update (1.0);
       /*  update the region  */
       gimp_drawable_flush (drawable);
       gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
diff --git a/plug-ins/common/sinus.c b/plug-ins/common/sinus.c
index 623a703..19c79ab 100644
--- a/plug-ins/common/sinus.c
+++ b/plug-ins/common/sinus.c
@@ -459,6 +459,7 @@ sinus (void)
       gimp_progress_update ((double) progress / (double) max_progress);
     }
 
+  gimp_progress_update (1.0);
   gimp_drawable_flush (drawable);
   gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
   gimp_drawable_update (drawable->drawable_id, x1, y1, x2 - x1, y2 - y1);
diff --git a/plug-ins/common/smooth-palette.c b/plug-ins/common/smooth-palette.c
index 615144e..06be84b 100644
--- a/plug-ins/common/smooth-palette.c
+++ b/plug-ins/common/smooth-palette.c
@@ -355,6 +355,7 @@ smooth_palette (GimpDrawable *drawable,
               len_best = len;
             }
         }
+      gimp_progress_update (1.0);
       memcpy (pal, pal_best, bpp * psize);
       g_free (pal_best);
       g_free (original);
diff --git a/plug-ins/common/softglow.c b/plug-ins/common/softglow.c
index 6a6261c..e180453 100644
--- a/plug-ins/common/softglow.c
+++ b/plug-ins/common/softglow.c
@@ -476,6 +476,7 @@ softglow (GimpDrawable *drawable,
 
   if (! preview)
     {
+      gimp_progress_update (1.0);
       /*  merge the shadow, update the drawable  */
       gimp_drawable_flush (drawable);
       gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
diff --git a/plug-ins/common/sphere-designer.c b/plug-ins/common/sphere-designer.c
index 381c918..e628ce5 100644
--- a/plug-ins/common/sphere-designer.c
+++ b/plug-ins/common/sphere-designer.c
@@ -3002,6 +3002,7 @@ realrender (GimpDrawable *drawable)
       gimp_pixel_rgn_set_row (&dpr, ibuffer, x1, y1 + y, x2 - x1);
       gimp_progress_update ((gdouble) y / (gdouble) ty);
     }
+  gimp_progress_update (1.0);
   g_free (buffer);
   g_free (ibuffer);
   gimp_drawable_flush (drawable);
diff --git a/plug-ins/common/tile-glass.c b/plug-ins/common/tile-glass.c
index 3a5d8ec..bf93553 100644
--- a/plug-ins/common/tile-glass.c
+++ b/plug-ins/common/tile-glass.c
@@ -488,6 +488,7 @@ glasstile (GimpDrawable *drawable,
     }
   else
     {
+      gimp_progress_update (1.0);
       gimp_drawable_flush (drawable);
       gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
       gimp_drawable_update (drawable->drawable_id,
diff --git a/plug-ins/common/tile-paper.c b/plug-ins/common/tile-paper.c
index b7b6d46..3b7c66a 100644
--- a/plug-ins/common/tile-paper.c
+++ b/plug-ins/common/tile-paper.c
@@ -809,6 +809,7 @@ filter (void)
   gimp_pixel_rgn_set_rect (&dst, pixels, 0, 0, p.drawable->width,
                            p.drawable->height);
 
+  gimp_progress_update (1.0);
   gimp_drawable_flush (p.drawable);
   gimp_drawable_merge_shadow (p.drawable->drawable_id, TRUE);
   gimp_drawable_update (p.drawable->drawable_id,
diff --git a/plug-ins/common/tile-seamless.c b/plug-ins/common/tile-seamless.c
index 7fb5922..a832d15 100644
--- a/plug-ins/common/tile-seamless.c
+++ b/plug-ins/common/tile-seamless.c
@@ -351,6 +351,7 @@ tile (GimpDrawable *drawable)
 
   tile_region (drawable, TRUE, x1, y1, x2, y2);
   tile_region (drawable, FALSE, x1, y1, x2, y2);
+  gimp_progress_update (1.0);
 
   gimp_drawable_flush (drawable);
   gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
diff --git a/plug-ins/common/tile-small.c b/plug-ins/common/tile-small.c
index d10e4eb..caad043 100644
--- a/plug-ins/common/tile-small.c
+++ b/plug-ins/common/tile-small.c
@@ -1002,6 +1002,7 @@ do_tiles(void)
       progress += dest_rgn.w * dest_rgn.h;
       gimp_progress_update ((double) progress / max_progress);
     }
+  gimp_progress_update (1.0);
 
   gimp_pixel_fetcher_destroy (pft);
 
diff --git a/plug-ins/common/tile.c b/plug-ins/common/tile.c
index 23ac46a..22bbe75 100644
--- a/plug-ins/common/tile.c
+++ b/plug-ins/common/tile.c
@@ -340,6 +340,7 @@ tile (gint32  image_id,
             }
         }
     }
+  gimp_progress_update (1.0);
 
   gimp_drawable_update (new_layer->drawable_id,
                         0, 0, new_layer->width, new_layer->height);
diff --git a/plug-ins/common/van-gogh-lic.c b/plug-ins/common/van-gogh-lic.c
index 37aa29e..5ca38c9 100644
--- a/plug-ins/common/van-gogh-lic.c
+++ b/plug-ins/common/van-gogh-lic.c
@@ -552,6 +552,7 @@ compute_lic (GimpDrawable *drawable,
 
       gimp_progress_update ((gfloat) ycount / (gfloat) src_rgn.h);
     }
+  gimp_progress_update (1.0);
 }
 
 static void
diff --git a/plug-ins/common/warp.c b/plug-ins/common/warp.c
index b446b87..6b1c5eb 100644
--- a/plug-ins/common/warp.c
+++ b/plug-ins/common/warp.c
@@ -810,6 +810,7 @@ blur16 (GimpDrawable *drawable)
         gimp_progress_update ((double) row / (double) (y2 - y1));
     }
 
+  gimp_progress_update (1.0);
   /*  update the region  */
   gimp_drawable_flush (drawable);
   gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
@@ -1167,6 +1168,7 @@ diff (GimpDrawable *drawable,
 
     } /* for (row..) */
 
+  gimp_progress_update (1.0);
   /*  update the region  */
   gimp_drawable_flush (draw_xd);
   gimp_drawable_flush (draw_yd);
@@ -1574,6 +1576,7 @@ warp_one (GimpDrawable *draw,
       gimp_progress_update ((double) progress / (double) max_progress);
 
     } /* for pr */
+   gimp_progress_update (1.0);
 
    if (tile != NULL)
     gimp_tile_unref (tile, FALSE);
diff --git a/plug-ins/common/whirl-pinch.c b/plug-ins/common/whirl-pinch.c
index 28da2fe..e0633cd 100644
--- a/plug-ins/common/whirl-pinch.c
+++ b/plug-ins/common/whirl-pinch.c
@@ -437,6 +437,7 @@ whirl_pinch (GimpDrawable *drawable)
       gimp_progress_update ((double) progress / max_progress);
     }
 
+  gimp_progress_update (1.0);
   gimp_pixel_fetcher_destroy (pft);
   gimp_pixel_fetcher_destroy (pfb);
 
diff --git a/plug-ins/common/wind.c b/plug-ins/common/wind.c
index 3b947f2..0f6a438 100644
--- a/plug-ins/common/wind.c
+++ b/plug-ins/common/wind.c
@@ -402,6 +402,7 @@ render_blast (GimpDrawable *drawable,
     }
   else
     {
+      gimp_progress_update (1.0);
       gimp_drawable_flush (drawable);
       gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
       gimp_drawable_update (drawable->drawable_id, x1, y1, width, height);
@@ -501,6 +502,7 @@ render_wind (GimpDrawable *drawable,
     }
   else
     {
+      gimp_progress_update (1.0);
       gimp_drawable_flush (drawable);
       gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
       gimp_drawable_update (drawable->drawable_id, x1, y1, width, height);
diff --git a/plug-ins/file-bmp/bmp-read.c b/plug-ins/file-bmp/bmp-read.c
index 59a1dfa..b0d2b10 100644
--- a/plug-ins/file-bmp/bmp-read.c
+++ b/plug-ins/file-bmp/bmp-read.c
@@ -934,7 +934,7 @@ ReadImage (FILE                  *fd,
         gimp_cmap[j++] = cmap[i][2];
       }
 
-  gimp_progress_update (1);
+  gimp_progress_update (1.0);
 
   gimp_pixel_rgn_init (&pixel_rgn, drawable,
                        0, 0, drawable->width, drawable->height, TRUE, FALSE);
diff --git a/plug-ins/file-bmp/bmp-write.c b/plug-ins/file-bmp/bmp-write.c
index aa1581e..17ae8b7 100644
--- a/plug-ins/file-bmp/bmp-write.c
+++ b/plug-ins/file-bmp/bmp-write.c
@@ -766,7 +766,7 @@ write_image (FILE   *f,
         }
     }
 
-  gimp_progress_update (1);
+  gimp_progress_update (1.0);
 }
 
 static void
diff --git a/plug-ins/file-fits/fits.c b/plug-ins/file-fits/fits.c
index 742319a..eb9a560 100644
--- a/plug-ins/file-fits/fits.c
+++ b/plug-ins/file-fits/fits.c
@@ -690,6 +690,7 @@ load_fits (const gchar *filename,
 	}
       g_free (linebuf);
     }
+  gimp_progress_update (1.0);
 
   g_free (data);
 
@@ -833,6 +834,7 @@ save_direct (FITS_FILE *ofp,
                                   (gdouble) (height * bpp));
 	}
     }
+  gimp_progress_update (1.0);
 
   nbytes = nbytes % FITS_RECORD_SIZE;
   if (nbytes)
@@ -957,6 +959,7 @@ save_index (FITS_FILE *ofp,
 	gimp_progress_update ((gdouble) (i + channel * height) /
 			      (gdouble) (height * (bpp + 2)));
     }
+  gimp_progress_update (1.0);
 
   nbytes = nbytes % FITS_RECORD_SIZE;
   if (nbytes)
diff --git a/plug-ins/file-fli/fli-gimp.c b/plug-ins/file-fli/fli-gimp.c
index edf088d..b324250 100644
--- a/plug-ins/file-fli/fli-gimp.c
+++ b/plug-ins/file-fli/fli-gimp.c
@@ -591,6 +591,7 @@ load_image (const gchar  *filename,
 
       gimp_progress_update ((double) cnt + 1 / (double)(to_frame - from_frame));
     }
+  gimp_progress_update (1.0);
 
   gimp_image_set_colormap (image_id, cm, 256);
 
@@ -808,6 +809,7 @@ save_image (const gchar  *filename,
 
       gimp_progress_update ((double) cnt + 1 / (double)(to_frame - from_frame));
     }
+  gimp_progress_update (1.0);
 
   /*
    * finish fli
diff --git a/plug-ins/file-sgi/sgi.c b/plug-ins/file-sgi/sgi.c
index df15492..cec58e7 100644
--- a/plug-ins/file-sgi/sgi.c
+++ b/plug-ins/file-sgi/sgi.c
@@ -477,6 +477,7 @@ load_image (const gchar  *filename,
               *pptr = rows[i][x] >> 8;
         }
     }
+  gimp_progress_update (1.0);
 
   /*
    * Do the last n rows (count always > 0)
@@ -625,7 +626,8 @@ save_image (const gchar  *filename,
         };
 
       gimp_progress_update ((double) y / (double) drawable->height);
-    };
+    }
+  gimp_progress_update (1.0);
 
   /*
    * Done with the file...
diff --git a/plug-ins/file-uri/uri-backend-gvfs.c b/plug-ins/file-uri/uri-backend-gvfs.c
index aba15a9..d9112e6 100644
--- a/plug-ins/file-uri/uri-backend-gvfs.c
+++ b/plug-ins/file-uri/uri-backend-gvfs.c
@@ -324,6 +324,7 @@ copy_uri (const gchar  *src_uri,
   success = g_file_copy (src_file, dest_file, G_FILE_COPY_OVERWRITE, NULL,
                          uri_progress_callback, &progress,
                          error);
+  gimp_progress_update (1.0);
 
   if (! success &&
       run_mode == GIMP_RUN_INTERACTIVE &&
diff --git a/plug-ins/file-xjt/xjpeg.c b/plug-ins/file-xjt/xjpeg.c
index e8ba115..6b962cf 100644
--- a/plug-ins/file-xjt/xjpeg.c
+++ b/plug-ins/file-xjt/xjpeg.c
@@ -227,6 +227,7 @@ xjpg_load_layer (const char    *filename,
 
       gimp_progress_update ((double) cinfo.output_scanline / (double) cinfo.output_height);
   }
+  gimp_progress_update (1.0);
 
   /* Step 7: Finish decompression */
 
@@ -421,6 +422,7 @@ xjpg_load_layer_alpha (const char *filename,
 
       gimp_progress_update ((double) cinfo.output_scanline / (double) cinfo.output_height);
   }
+  gimp_progress_update (1.0);
 
   /* Step 7: Finish decompression */
 
@@ -618,6 +620,7 @@ xjpg_load_channel (const char   *filename,
 
       gimp_progress_update ((double) cinfo.output_scanline / (double) cinfo.output_height);
   }
+  gimp_progress_update (1.0);
 
   /* Step 7: Finish decompression */
 
@@ -913,6 +916,7 @@ xjpg_save_drawable (const char     *filename,
       if ((cinfo.next_scanline % 5) == 0)
 	gimp_progress_update ((double) cinfo.next_scanline / (double) cinfo.image_height);
   }
+  gimp_progress_update (1.0);
 
   /* Step 6: Finish compression */
   jpeg_finish_compress (&cinfo);
diff --git a/plug-ins/flame/flame.c b/plug-ins/flame/flame.c
index 152561c..8be9de0 100644
--- a/plug-ins/flame/flame.c
+++ b/plug-ins/flame/flame.c
@@ -328,6 +328,7 @@ flame (GimpDrawable *drawable)
   drawable_to_cmap (&config.cp);
   render_rectangle (&f, tmp, width, field_both, 4,
                     gimp_progress_update);
+  gimp_progress_update (1.0);
 
   /* update destination */
   if (4 == bytes)
diff --git a/plug-ins/fractal-explorer/fractal-explorer.c b/plug-ins/fractal-explorer/fractal-explorer.c
index a13ca03..4b04d72 100644
--- a/plug-ins/fractal-explorer/fractal-explorer.c
+++ b/plug-ins/fractal-explorer/fractal-explorer.c
@@ -469,6 +469,7 @@ explorer (GimpDrawable * drawable)
       if ((row % 10) == 0)
         gimp_progress_update ((double) row / (double) (y2 - y1));
     }
+  gimp_progress_update (1.0);
 
   /*  update the processed region  */
   gimp_drawable_flush (drawable);
diff --git a/plug-ins/gimpressionist/gimp.c b/plug-ins/gimpressionist/gimp.c
index 4467127..55e6161 100644
--- a/plug-ins/gimpressionist/gimp.c
+++ b/plug-ins/gimpressionist/gimp.c
@@ -494,6 +494,7 @@ gimpressionist_main (void)
         gimp_progress_update (0.8 + 0.2 * done / total);
     }
 
+  gimp_progress_update (1.0);
   gimp_drawable_flush (drawable);
   gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
   gimp_drawable_update (drawable->drawable_id, x1, y1, width, height);
diff --git a/plug-ins/gradient-flare/gradient-flare.c b/plug-ins/gradient-flare/gradient-flare.c
index b41769c..9e9b943 100644
--- a/plug-ins/gradient-flare/gradient-flare.c
+++ b/plug-ins/gradient-flare/gradient-flare.c
@@ -1002,6 +1002,7 @@ plugin_do (void)
   else
     plugin_do_non_asupsample ();
 
+  gimp_progress_update (1.0);
   /* Clean up */
   calc_deinit ();
   gimp_drawable_flush (drawable);
diff --git a/plug-ins/lighting/lighting-apply.c b/plug-ins/lighting/lighting-apply.c
index 659096e..9c7245d 100644
--- a/plug-ins/lighting/lighting-apply.c
+++ b/plug-ins/lighting/lighting-apply.c
@@ -134,6 +134,8 @@ compute_image (void)
       gimp_pixel_rgn_set_row (&dest_region, row, 0, ycount, width);
     }
 
+  gimp_progress_update (1.0);
+
   g_free (row);
 
   /* Update image */
diff --git a/plug-ins/map-object/map-object-apply.c b/plug-ins/map-object/map-object-apply.c
index 844c484..6369ba3 100644
--- a/plug-ins/map-object/map-object-apply.c
+++ b/plug-ins/map-object/map-object-apply.c
@@ -311,6 +311,7 @@ compute_image (void)
                                       show_progress,
                                       NULL);
     }
+  gimp_progress_update (1.0);
 
   /* Update the region */
   /* ================= */
diff --git a/plug-ins/maze/maze-algorithms.c b/plug-ins/maze/maze-algorithms.c
index 0db9275..6901939 100644
--- a/plug-ins/maze/maze-algorithms.c
+++ b/plug-ins/maze/maze-algorithms.c
@@ -464,6 +464,7 @@ prim (gint    pos,
       if (progress++ % PRIMS_PROGRESS_UPDATE)
         gimp_progress_update ((double) progress / (double) max_progress);
     }
+  gimp_progress_update (1.0);
 
   g_slist_free (front_cells);
 }
@@ -639,6 +640,7 @@ prim_tileable (guchar *maz,
       if (progress++ % PRIMS_PROGRESS_UPDATE)
         gimp_progress_update ((double) progress / (double) max_progress);
     }
+  gimp_progress_update (1.0);
 
   g_slist_free (front_cells);
 }
diff --git a/plug-ins/maze/maze.c b/plug-ins/maze/maze.c
index 3c6e996..05e67cd 100644
--- a/plug-ins/maze/maze.c
+++ b/plug-ins/maze/maze.c
@@ -484,6 +484,7 @@ maze (GimpDrawable * drawable)
         }
     }
 
+  gimp_progress_update (1.0);
   gimp_drawable_flush (drawable);
   gimp_drawable_merge_shadow (drawable->drawable_id, TRUE);
   gimp_drawable_update (drawable->drawable_id, x1, y1, (x2 - x1), (y2 - y1));
diff --git a/plug-ins/pagecurl/pagecurl.c b/plug-ins/pagecurl/pagecurl.c
index 8d5bb61..1400a58 100644
--- a/plug-ins/pagecurl/pagecurl.c
+++ b/plug-ins/pagecurl/pagecurl.c
@@ -908,6 +908,7 @@ do_curl_effect (gint32 drawable_id)
       gimp_progress_update ((double) progress / (double) max_progress);
     }
 
+  gimp_progress_update (1.0);
   gimp_drawable_flush (curl_layer);
   gimp_drawable_merge_shadow (curl_layer->drawable_id, FALSE);
   gimp_drawable_update (curl_layer->drawable_id,
@@ -1007,6 +1008,7 @@ clear_curled_region (gint32 drawable_id)
       gimp_progress_update ((double) progress / (double) max_progress);
     }
 
+  gimp_progress_update (1.0);
   gimp_drawable_flush (drawable);
   gimp_drawable_merge_shadow (drawable_id, TRUE);
   gimp_drawable_update (drawable_id,
diff --git a/plug-ins/print/print-draw-page.c b/plug-ins/print/print-draw-page.c
index 4cc02ae..14de652 100644
--- a/plug-ins/print/print-draw-page.c
+++ b/plug-ins/print/print-draw-page.c
@@ -252,6 +252,8 @@ print_surface_from_drawable (gint32 drawable_ID)
         gimp_progress_update ((gdouble) done / (width * height));
     }
 
+  gimp_progress_update (1.0);
+
   gimp_drawable_detach (drawable);
 
   cairo_surface_mark_dirty (surface);
diff --git a/plug-ins/selection-to-path/pxl-outline.c b/plug-ins/selection-to-path/pxl-outline.c
index 027bb41..13d3956 100644
--- a/plug-ins/selection-to-path/pxl-outline.c
+++ b/plug-ins/selection-to-path/pxl-outline.c
@@ -118,6 +118,8 @@ find_outline_pixels (void)
 	gimp_progress_update (((gdouble)row) / height);
   }
 
+  gimp_progress_update (1.0);
+
   local_free_bitmap (&marked);
 
   return outline_list;



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