src/strip.vala
[app.mailtrimmer] / src / strip.vala
index c3fd8fc..0c1fd0e 100644 (file)
@@ -368,6 +368,20 @@ public class Strip : GLib.Object {
                return;
        }
        
+       // initialize it with known data..
+       // that should wipe out dupes.
+       var matches = this.execute("SELECT count(id) as nid FROM Attachment WHERE id = %d".printf(
+                       int.parse(sid)));  
+
+                
+               if (matches=="") {       
+                       // our old mailfort code deleted the crap out of old records...
+                       // if this occurs we will need to create the record again..
+                  GLib.error("Failed to find id  :%s", sid);
+                  return;
+               }
+       
+       
        // initialize it with known data..
        // that should wipe out dupes.
        var filesize = this.execute("SELECT filesize FROM Attachment WHERE id = %d".printf(
@@ -594,7 +608,7 @@ public class Strip : GLib.Object {
                
                
        
-       var rc=  this.mysql.query(str);         
+       var rc=  this.mysql.query(str); 
        if ( rc != 0 ) {
 
                    GLib.debug("ERROR %u: Query failed: %s\n", this.mysql.errno(), this.mysql.error());
@@ -604,6 +618,8 @@ public class Strip : GLib.Object {
 
         var rs = mysql.use_result();
         
+        //GLib.debug("got %d rows", (int) rs.num_rows());
+        
         var got_row = false;
                string[] row;
                string ret = "";
@@ -613,14 +629,20 @@ public class Strip : GLib.Object {
                
                }
                if (!need_return) {
+               if (StripApplication.opt_debug_sql) {
+                               GLib.debug("got %s", got_row ? "=Nothing=" : ret);
+                       }
                        return got_row ? "" : ret;
                }
                if (!got_row) {
+
                         GLib.debug("ERROR : no rows returned");
                        Posix.exit(1);
                        return "";
                }
-               GLib.debug("got %s", ret);
+       if (StripApplication.opt_debug_sql) {
+                       GLib.debug("got %s", ret);
+               }
                return ret;