,GLib.FileQueryInfoFlags.NONE,null);
var file_size = (int) fileinfo.get_size();
-
+ if (!FileUtils.test (fn, FileTest.EXISTS)) {
+ GLib.debug("SKIP -- file does not exist");
+ }
this.real_query(-1, """
var filename = attachment.get_filename().replace("/", "-").replace("\n", "").replace("\t", " ");
var fn = GLib.Environment.get_tmp_dir() +
- "/"+ this.active_name + "."+ filename;
+ "/"+ this.active_name + "."+ GLib.Uri.escape_string(filename,"", false);
var outfile = new GMime.StreamFile.for_path(fn, "w");
outfile.set_owner(true);
""".printf(
this.mysql_escape(this.active_message_exim_id),
chksum,
- this.mysql_escape( attachment.get_filename() ), // what is thsi is invalid?
+ this.mysql_escape( GLib.Uri.escape_string(attachment.get_filename(),"", false) ), // what is thsi is invalid?
file_size)
);
var target_fn = "";
if (StripApplication.opt_is_extracting) {
- target_fn = StripApplication.opt_target_path + "/" + this.created_dir +"/"+ file_id + "-" + filename;
+ target_fn = StripApplication.opt_target_path + "/" + this.created_dir +"/"+ file_id + "-" + GLib.Uri.escape_string(filename,"", false);
}
- var stored = "/" + this.created_dir +"/"+ file_id + "-" + filename;
+ var stored = "/" + this.created_dir +"/"+ file_id + "-" + GLib.Uri.escape_string(filename,"", false);
this.query("""
SELECT attachment_update_store(
rep.set_filename(filename);
string txt = "<html><body>"+
"<a href=\"" + StripApplication.opt_replace_link + "/" +
- file_id + "/" + this.created_dir + "/"+chksum+"/"+ GLib.Uri.escape_string( filename) +"\">" +
- GLib.Uri.escape_string( filename) + // fixme needs html escaping...
+ file_id + "/" + this.created_dir + "/"+chksum+"/"+ GLib.Uri.escape_string( filename, "", false) +"\">" +
+ GLib.Uri.escape_string( filename, "", false) + // fixme needs html escaping...
"</a>" +
"</body></html>";
rep.get_content_type().set_parameter("charset", "utf-8");
rep.set_header("X-strip-id", file_id);
rep.set_header("X-strip-content-name", filename);
- rep.set_header("X-strip-path", this.created_dir + "/" + file_id + "-" + filename);
+ rep.set_header("X-strip-path", this.created_dir + "/" + file_id + "-" + GLib.Uri.escape_string(filename,"", false));
rep.set_header("X-strip-content-type", mime_type);
var stream = new GMime.StreamMem.with_buffer(txt.data);
var con = new GMime.DataWrapper.with_stream(stream,GMime.ContentEncoding.DEFAULT);