version 0.3.27
[fms.git] / src / freenet / messagelistinserter.cpp
index aa1e814..786fffe 100644 (file)
@@ -124,10 +124,19 @@ const bool MessageListInserter::HandlePutSuccessful(FCPMessage &message)
                st.Bind(1,localidentityid);\r
                st.Step();\r
 \r
-               // delete any record from tmpMessageListInsert\r
-               st=m_db->Prepare("DELETE FROM tmpMessageListInsert WHERE LocalIdentityID=?;");\r
+               // delete only a single record from tmpMessageListInsert\r
+               st=m_db->Prepare("SELECT MessageListInsertID FROM tmpMessageListInsert WHERE LocalIdentityID=?;");\r
                st.Bind(0,localidentityid);\r
                st.Step();\r
+               if(st.RowReturned())\r
+               {\r
+                       int id=-1;\r
+                       st.ResultInt(0,id);\r
+\r
+                       st=m_db->Prepare("DELETE FROM tmpMessageListInsert WHERE MessageListInsertID=?;");\r
+                       st.Bind(0,id);\r
+                       st.Step();\r
+               }\r
 \r
                RemoveFromInsertList(localidentityid);\r
 \r