tags 569370 + patch pending
thanks

Dear maintainer,

I've prepared an NMU for shotwell (versioned as 0.4.3+dfsg-1.1) and
uploaded it to DELAYED/2. Please feel free to tell me if I
should delay it longer.

Regards.
diff -Nru shotwell-0.4.3+dfsg/debian/changelog shotwell-0.4.3+dfsg/debian/changelog
--- shotwell-0.4.3+dfsg/debian/changelog	2010-01-23 20:49:03.000000000 +0100
+++ shotwell-0.4.3+dfsg/debian/changelog	2010-02-20 18:05:20.000000000 +0100
@@ -1,3 +1,13 @@
+shotwell (0.4.3+dfsg-1.1) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * debian/patches/02_vala_0.7.10.patch:
+    - Fix build with vala 0.7.10 (Closes: #569370).
+  * debian/control:
+    - Bump minimum valac version to 0.7.10.
+
+ -- Luca Falavigna <dktrkr...@debian.org>  Sat, 20 Feb 2010 18:03:45 +0100
+
 shotwell (0.4.3+dfsg-1) unstable; urgency=low
 
   * New upstream release.
diff -Nru shotwell-0.4.3+dfsg/debian/control shotwell-0.4.3+dfsg/debian/control
--- shotwell-0.4.3+dfsg/debian/control	2010-01-23 20:43:03.000000000 +0100
+++ shotwell-0.4.3+dfsg/debian/control	2010-02-20 18:09:45.000000000 +0100
@@ -2,7 +2,7 @@
 Section: gnome
 Priority: extra
 Maintainer: Devid Antonio Filoni <d.fil...@ubuntu.com>
-Build-Depends: debhelper (>= 7.0.50~), valac (>= 0.7.9), libgee-dev
+Build-Depends: debhelper (>= 7.0.50~), valac (>= 0.7.10), libgee-dev
  (>= 0.5.0), libgtk2.0-dev (>= 2.14.4), libexif-dev (>= 0.6.16),
  libsqlite3-dev (>= 3.5.9), libdbus-glib-1-dev (>= 0.76), libgconf2-dev
  (>= 2.22.0), libhal-dev (>= 0.5.11), libgphoto2-2-dev (>= 2.4.2),
diff -Nru shotwell-0.4.3+dfsg/debian/patches/02_vala_0.7.10.patch shotwell-0.4.3+dfsg/debian/patches/02_vala_0.7.10.patch
--- shotwell-0.4.3+dfsg/debian/patches/02_vala_0.7.10.patch	1970-01-01 01:00:00.000000000 +0100
+++ shotwell-0.4.3+dfsg/debian/patches/02_vala_0.7.10.patch	2010-02-20 18:03:37.000000000 +0100
@@ -0,0 +1,202 @@
+# Fix build with vala 0.7.10
+# http://trac.yorba.org/changeset/1155/shotwell
+Index: shotwell-0.4.3+dfsg/Makefile
+===================================================================
+--- shotwell-0.4.3+dfsg.orig/Makefile	2010-02-20 18:02:17.442526932 +0100
++++ shotwell-0.4.3+dfsg/Makefile	2010-02-20 18:00:09.210527356 +0100
+@@ -6,7 +6,7 @@
+ BUILD_ROOT = 1
+ 
+ VALAC = valac
+-MIN_VALAC_VERSION = 0.7.9
++MIN_VALAC_VERSION = 0.7.10
+ INSTALL_PROGRAM = install
+ INSTALL_DATA = install -m 644
+ 
+Index: shotwell-0.4.3+dfsg/src/ColorTransformation.vala
+===================================================================
+--- shotwell-0.4.3+dfsg.orig/src/ColorTransformation.vala	2010-02-20 18:02:18.206529533 +0100
++++ shotwell-0.4.3+dfsg/src/ColorTransformation.vala	2010-02-20 18:00:09.174528613 +0100
+@@ -379,11 +379,7 @@
+ public class RGBTransformation : PixelTransformation {
+     /* matrix entries are stored in row-major order; by default, the matrix formed
+        by matrix_entries is the 4x4 identity matrix */
+-    protected float[] matrix_entries = {
+-        1.0f, 0.0f, 0.0f, 0.0f,
+-        0.0f, 1.0f, 0.0f, 0.0f,
+-        0.0f, 0.0f, 1.0f, 0.0f,
+-        0.0f, 0.0f, 0.0f, 1.0f };
++    protected float[] matrix_entries;
+     
+     protected const int MATRIX_SIZE = 16;
+ 
+@@ -391,6 +387,16 @@
+     
+     public RGBTransformation(PixelTransformationType type) {
+         base(type);
++        
++        // Can't initialize these in their member declarations because of a valac bug that
++        // I've been unable to produce a minimal test case for to report (JN).  May be 
++        // related to this bug:
++        // https://bugzilla.gnome.org/show_bug.cgi?id=570821
++        matrix_entries = {
++        1.0f, 0.0f, 0.0f, 0.0f,
++        0.0f, 1.0f, 0.0f, 0.0f,
++        0.0f, 0.0f, 1.0f, 0.0f,
++        0.0f, 0.0f, 0.0f, 1.0f };
+     }
+ 
+     public override PixelFormat get_preferred_format() {
+Index: shotwell-0.4.3+dfsg/src/EditingTools.vala
+===================================================================
+--- shotwell-0.4.3+dfsg.orig/src/EditingTools.vala	2010-02-20 18:02:19.446531212 +0100
++++ shotwell-0.4.3+dfsg/src/EditingTools.vala	2010-02-20 18:00:09.194527052 +0100
+@@ -303,7 +303,8 @@
+     
+     private EditingToolWindow tool_window = null;
+     
+-    public static delegate EditingTool Factory();
++    [CCode (has_target=false)]
++    public delegate EditingTool Factory();
+ 
+     public signal void activated();
+     
+Index: shotwell-0.4.3+dfsg/src/LibraryWindow.vala
+===================================================================
+--- shotwell-0.4.3+dfsg.orig/src/LibraryWindow.vala	2010-02-20 18:02:18.478534832 +0100
++++ shotwell-0.4.3+dfsg/src/LibraryWindow.vala	2010-02-20 18:00:09.186534026 +0100
+@@ -125,7 +125,7 @@
+             return page != null;
+         }
+         
+-        protected Page get_page() {
++        public Page get_page() {
+             if (page == null) {
+                 // create the page and set its marker, if one has been supplied
+                 page = construct_page();
+Index: shotwell-0.4.3+dfsg/src/Properties.vala
+===================================================================
+--- shotwell-0.4.3+dfsg.orig/src/Properties.vala	2010-02-20 18:02:19.166528307 +0100
++++ shotwell-0.4.3+dfsg/src/Properties.vala	2010-02-20 18:00:09.210527356 +0100
+@@ -5,11 +5,11 @@
+  */
+ 
+ private abstract class Properties : Gtk.HBox {
+-    protected Gtk.Label label = new Gtk.Label("");
+-    protected Gtk.Label info = new Gtk.Label(""); 
+-    protected string basic_properties_labels;
+-    protected string basic_properties_info;
+-    protected bool first_line;
++    private Gtk.Label label = new Gtk.Label("");
++    private Gtk.Label info = new Gtk.Label(""); 
++    private string basic_properties_labels;
++    private string basic_properties_info;
++    private bool first_line;
+ 
+     public Properties() {
+         label.set_justify(Gtk.Justification.RIGHT);
+@@ -19,6 +19,7 @@
+         pack_start(info, true, true, 3);
+         
+         info.set_ellipsize(Pango.EllipsizeMode.END);
++        info.set_selectable(true);
+     }
+ 
+     protected void add_line(string label, string info) {
+@@ -85,7 +86,7 @@
+ 
+         if (count == 1) {
+             foreach (DataView item in iter) {
+-                get_single_properties(item);                
++                get_single_properties(item);
+                 break;
+             }
+         } else {
+@@ -358,7 +359,7 @@
+             DataSource source = view.get_source();
+ 
+             if (source is PhotoSource) {
+-                if (source is TransformablePhoto)                
++                if (source is TransformablePhoto)
+                     file_path = ((TransformablePhoto) source).get_file().get_path();
+ 
+                 filesize = ((PhotoSource) source).get_filesize();
+Index: shotwell-0.4.3+dfsg/src/WebConnectors.vala
+===================================================================
+--- shotwell-0.4.3+dfsg.orig/src/WebConnectors.vala	2010-02-20 18:02:18.758530706 +0100
++++ shotwell-0.4.3+dfsg/src/WebConnectors.vala	2010-02-20 18:00:09.206525201 +0100
+@@ -132,8 +132,12 @@
+         return arguments;
+     }
+ 
+-    protected void set_response(string new_response) {
+-        response = new_response;
++    protected void set_response(uint8[] new_response) {
++        StringBuilder builder = new StringBuilder();
++        foreach (uint8 b in new_response)
++            builder.append(b.to_string());
++        
++        response = builder.str;
+     }
+ 
+     protected RESTArgument[] get_sorted_arguments() {
+@@ -182,7 +186,7 @@
+         post_req.set_request("application/x-www-form-urlencoded", Soup.MemoryUse.COPY,
+             formdata_string, formdata_string.length);
+         parent_session.send_message(post_req);
+-        response = post_req.response_body.data;
++        set_response(post_req.response_body.data);
+         
+         is_executed = true;
+     }
+@@ -451,12 +455,9 @@
+         
+         TemporaryFileDescriptor[] temp_files = prepare_files();
+         
+-        PublishingError err = null;
+         try {
+             if (!user_cancelled && temp_files.length > 0)
+                 send_files(temp_files);
+-        } catch (PublishingError e) {
+-            err = e;
+         } finally {
+             foreach (TemporaryFileDescriptor temp in temp_files) {
+                 try {
+@@ -470,11 +471,6 @@
+                 }
+             }
+         }
+-        
+-        // Have to do it this way because Vala currently doesn't handle try...finally well right
+-        // now, the finally block is executed but the exception is not propagated upwards
+-        if (err != null)
+-            throw err;
+     }
+     
+     private TemporaryFileDescriptor[] prepare_files() {
+Index: shotwell-0.4.3+dfsg/vapi/libexif.vapi
+===================================================================
+--- shotwell-0.4.3+dfsg.orig/vapi/libexif.vapi	2010-02-20 18:02:19.938529962 +0100
++++ shotwell-0.4.3+dfsg/vapi/libexif.vapi	2010-02-20 18:00:09.210527356 +0100
+@@ -63,8 +63,8 @@
+         public static void set_slong(uchar *buffer, ByteOrder byteOrder, int32 val);
+     }
+ 
+-    [CCode (cheader_filename="libexif/exif-content.h")]
+-    public static delegate void ForeachEntryFunc(Entry e, void *user);
++    [CCode (cheader_filename="libexif/exif-content.h", has_target=false)]
++    public delegate void ForeachEntryFunc(Entry e, void *user);
+ 
+     [Compact]
+     [CCode (
+@@ -94,8 +94,8 @@
+         public uint size;
+     }
+ 
+-    [CCode (cheader_filename="libexif/exif-data.h")]
+-    public static delegate void ForeachContentFunc(Content c, void *user);
++    [CCode (cheader_filename="libexif/exif-data.h", has_target=false)]
++    public delegate void ForeachContentFunc(Content c, void *user);
+ 
+     [CCode (
+         cname="ExifDataOption",
diff -Nru shotwell-0.4.3+dfsg/debian/patches/series shotwell-0.4.3+dfsg/debian/patches/series
--- shotwell-0.4.3+dfsg/debian/patches/series	2010-01-23 20:46:21.000000000 +0100
+++ shotwell-0.4.3+dfsg/debian/patches/series	2010-02-20 17:59:11.000000000 +0100
@@ -1 +1,2 @@
 01_GNU-kFreeBSD.diff
+02_vala_0.7.10.patch

Reply via email to