projects
/
app.mailtrimmer
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
a465fe3
)
src/strip.vala
author
Alan Knowles
<alan@roojs.com>
Fri, 29 Jun 2018 07:48:38 +0000
(15:48 +0800)
committer
Alan Knowles
<alan@roojs.com>
Fri, 29 Jun 2018 07:48:38 +0000
(15:48 +0800)
src/strip.vala
patch
|
blob
|
history
diff --git
a/src/strip.vala
b/src/strip.vala
index
0c1fd0e
..
c9d5692
100644
(file)
--- a/
src/strip.vala
+++ b/
src/strip.vala
@@
-374,11
+374,12
@@
public class Strip : GLib.Object {
int.parse(sid)));
int.parse(sid)));
- if (matches
=="") {
+ if (matches
!="") {
// our old mailfort code deleted the crap out of old records...
// if this occurs we will need to create the record again..
// 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;
+ this.fix_deleted_attachment_db(int.parse(sid),attachment);
+ return;
+
}
}
@@
-388,7
+389,7
@@
public class Strip : GLib.Object {
int.parse(sid)));
if (filesize=="") {
int.parse(sid)));
if (filesize=="") {
- GLib.
debug
("Ignoring record id (missing in database) :%s", sid);
+ GLib.
error
("Ignoring record id (missing in database) :%s", sid);
return;
}
if (int.parse(filesize) < 1) {
return;
}
if (int.parse(filesize) < 1) {
@@
-437,6
+438,27
@@
public class Strip : GLib.Object {
}
}
+ public void fix_deleted_attachment_db(GMime.Part attachment)
+ {
+ this.query("""
+ INSERT INTO Attachments
+ (id, exim_msg?, chksum, filesize)
+ values
+ (
+ attachment_init(
+ '%s', '%s', '%s', %d
+ ) as id
+
+ """.printf(
+ this.mysql_escape(this.active_message_exim_id),
+ this.mysql_escape(chksum),
+ this.mysql_escape(mime_filename),
+ int.parse(filesize)
+ ));
+
+ }
+
+
public void replace_attachment(GMime.Multipart parent, GMime.Part attachment)
{
var sid = attachment.get_header("X-strip-id");
public void replace_attachment(GMime.Multipart parent, GMime.Part attachment)
{
var sid = attachment.get_header("X-strip-id");