src/strip.vala
[app.mailtrimmer] / src / strip.vala
index 31a07d2..23d4174 100644 (file)
@@ -556,6 +556,9 @@ public class Strip : GLib.Object {
                        "/"+ this.active_name + "."+   GLib.Uri.escape_string(filename,"", false);
 
            var outfile = new GMime.StreamFile.for_path(fn, "w");
+           if (outfile == null) {
+               return; // something has gone wrong??
+       }
            outfile.set_owner(true);
            var file_size = (int) c.write_to_stream(outfile);
            var chksum = this.md5_file(fn);
@@ -1068,6 +1071,10 @@ public class Strip : GLib.Object {
                
         }
         
+       if (StripApplication.opt_stamp && GLib.FileUtils.test( basepath + subpath + "/.strip-done-stamp", GLib.FileTest.EXISTS )) {
+               return;
+               }
+        
         
         var f = File.new_for_path(basepath + subpath);
                FileEnumerator file_enum;
@@ -1149,6 +1156,13 @@ public class Strip : GLib.Object {
             this.scan_dir(basepath,sp);
             
         }
+        
+        // completed this folder
+        
+        if (StripApplication.opt_stamp) {
+               GLib.FileUtils.set_contents (basepath + subpath + "/.strip-done-stamp", "Stripper done");
+        }
+        
     
     
     }