commit 31fb245e86df88fcf26b5b673d567bc12a21ef5a
Author: Christophe Fergeau <cferg...@mandriva.com>
Date:   Wed Aug 25 11:54:18 2010 +0200

    add get_aligned_width function

 src/ithumb-writer.c |   29 ++++++++++++++---------------
 1 files changed, 14 insertions(+), 15 deletions(-)
---
diff --git a/src/ithumb-writer.c b/src/ithumb-writer.c
index b588ed0..f40b6c7 100644
--- a/src/ithumb-writer.c
+++ b/src/ithumb-writer.c
@@ -87,6 +87,17 @@ static guint16 get_RGB_565_pixel (const guchar *pixel, gint 
byte_order)
     return get_gint16 (r | g | b, byte_order);
 }
 
+static guint get_aligned_width (const Itdb_ArtworkFormat *img_info)
+{
+    guint width;
+
+    width = img_info->width;
+    if ((img_info->row_bytes_alignment > 0) && ((img_info->width % 
img_info->row_bytes_alignment) != 0)) {
+        width += img_info->row_bytes_alignment - (img_info->width % 
img_info->row_bytes_alignment);
+    }
+    return width;
+}
+
 static guint16 *
 pack_RGB_565 (GdkPixbuf *pixbuf, const Itdb_ArtworkFormat *img_info,
              gint horizontal_padding, gint vertical_padding,
@@ -110,11 +121,7 @@ pack_RGB_565 (GdkPixbuf *pixbuf, const Itdb_ArtworkFormat 
*img_info,
        g_return_val_if_fail (((height + vertical_padding) <= 
img_info->height), NULL);
 
 
-        if ((img_info->row_bytes_alignment > 0) && ((img_info->width % 
img_info->row_bytes_alignment) != 0)) {
-            dest_width = img_info->width + (img_info->row_bytes_alignment - 
(img_info->width % img_info->row_bytes_alignment));
-        } else {
-            dest_width = img_info->width;
-        }
+       dest_width = get_aligned_width (img_info);
 
        /* Make sure thumb size calculation won't overflow */
        g_return_val_if_fail (dest_width != 0, NULL);
@@ -216,11 +223,7 @@ pack_RGB_555 (GdkPixbuf *pixbuf, const Itdb_ArtworkFormat 
*img_info,
        g_return_val_if_fail (((width + horizontal_padding) <= 
img_info->width), NULL);
        g_return_val_if_fail (((height + vertical_padding) <= 
img_info->height), NULL);
 
-        if ((img_info->row_bytes_alignment > 0) && ((img_info->width % 
img_info->row_bytes_alignment) != 0)) {
-            dest_width = img_info->width + (img_info->row_bytes_alignment - 
(img_info->width % img_info->row_bytes_alignment));
-        } else {
-            dest_width = img_info->width;
-        }
+       dest_width = get_aligned_width (img_info);
 
        /* Make sure thumb size calculation won't overflow */
        g_return_val_if_fail (dest_width != 0, NULL);
@@ -430,11 +433,7 @@ pack_rec_RGB_555 (GdkPixbuf *pixbuf, const 
Itdb_ArtworkFormat *img_info,
     {
         gint row_stride;
 
-        if ((img_info->row_bytes_alignment > 0) && ((img_info->width % 
img_info->row_bytes_alignment) != 0)) {
-            row_stride = img_info->width + (img_info->row_bytes_alignment - 
(img_info->width % img_info->row_bytes_alignment));
-        } else {
-            row_stride = img_info->width;
-        }
+       row_stride = get_aligned_width (img_info);
 
        deranged_pixels = derange_pixels (NULL, pixels,
                                          img_info->width, img_info->height,

------------------------------------------------------------------------------
This SF.net Dev2Dev email is sponsored by:

Show off your parallel programming skills.
Enter the Intel(R) Threading Challenge 2010.
http://p.sf.net/sfu/intel-thread-sfd
_______________________________________________
gtkpod-cvs2 mailing list
gtkpod-cvs2@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/gtkpod-cvs2

Reply via email to