My apologies if I&#39;m wrong in sending this to release-team, but I&#39;ve fixed a few data corruption bugs in KPilot in the last few days and was really hoping we could get them included in the KDE 4.2.0 release, if possible. I&#39;ve e-mailed Dirk already, but haven&#39;t heard back from him just yet, being the weekend and all.<br>
<br>Specifically, commits 915907, 915831, and 915837 fix data corruption problems in KPilot.<br><br>Thank you! =:)<br><br><div class="gmail_quote">---------- Forwarded message ----------<br>From: <b class="gmail_sendername">Jason &#39;vanRijn&#39; Kasper</b> <span dir="ltr">&lt;<a href="mailto:vr@movingparts.net">vr@movingparts.net</a>&gt;</span><br>
Date: Sat, Jan 24, 2009 at 12:21 AM<br>Subject: Re: branches/KDE/4.2/kdepim/kpilot/conduits/akonadibase<br>To: Dirk Mueller &lt;<a href="mailto:mueller@kde.org">mueller@kde.org</a>&gt;<br><br><br>Meh. I&#39;m sure I&#39;m pushing my luck now, but in the off chance that you can still sneak some more data corruption bug fixes into the KDE 4.2 tag/release, I just committed this to branches/KDE/4.2/kdepim/kpilot:<br>
<br>
SVN commit 915907 by vanrijn:<br>
<br>
Fix for another data problem (Thank you Doug!!!). This one was slightly less<br>
irksome in that we refused to let you delete things, no matter how hard you try,<br>
rather than deleting things you wouldn&#39;t have wanted us to, but still, data is<br>
data.<br>
<br>
BUG:181711<div><div></div><div class="Wj3C7c"><br><br><div class="gmail_quote">On Fri, Jan 23, 2009 at 6:04 PM, Jason &#39;vanRijn&#39; Kasper <span dir="ltr">&lt;<a href="mailto:vr@movingparts.net" target="_blank">vr@movingparts.net</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi Dirk,<br><br>I asked in #kde-devel and they said I should e-mail you about this. We just found and fixed a data corruption bug in KPilot. Is there any way we can get this into KDE 4.2&#39;s tag?&nbsp; I checked it into branches/KDE/4.2/kdepim/kpilot.<br>


<br>Sorry for the trouble. =:(<br><br><div class="gmail_quote"><div>---------- Forwarded message ----------<br>From: <b class="gmail_sendername">Jason vanRijn Kasper</b> <span dir="ltr">&lt;<a href="mailto:vR@movingparts.net" target="_blank">vR@movingparts.net</a>&gt;</span><br>


Date: Fri, Jan 23, 2009 at 5:50 PM<br>Subject: branches/KDE/4.2/kdepim/kpilot/conduits/akonadibase<br>To: <a href="mailto:kde-commits@kde.org" target="_blank">kde-commits@kde.org</a><br><br><br>SVN commit 915831 by vanrijn:<br>


<br>
Fixes stupid data corruption bug.<br>
BUG:181493<br>
<br>
<br></div>
&nbsp;M &nbsp;+2 -0 &nbsp; &nbsp; &nbsp;akonadirecord.cc<div><br>
<br>
<br>
--- branches/KDE/4.2/kdepim/</div><div><div>kpilot/conduits/akonadibase/akonadirecord.cc #915830:915831<br>
@@ -47,12 +47,14 @@<br>
 &nbsp; &nbsp; &nbsp; &nbsp;d-&gt;fItem = item;<br>
 &nbsp; &nbsp; &nbsp; &nbsp;d-&gt;fLastSyncDateTime = lastSync.toUTC(); // Item times are saved in UTC time.<br>
 &nbsp; &nbsp; &nbsp; &nbsp;d-&gt;fDeleted = false;<br>
+ &nbsp; &nbsp; &nbsp; d-&gt;fDummy = false;<br>
&nbsp;}<br>
<br></div><div>
&nbsp;AkonadiRecord::AkonadiRecord( const QString&amp; id ) : d( new AkonadiRecordPrivate )<br>
&nbsp;{<br>
 &nbsp; &nbsp; &nbsp; &nbsp;d-&gt;fTempId = id;<br>
 &nbsp; &nbsp; &nbsp; &nbsp;d-&gt;fDeleted = true;<br>
+ &nbsp; &nbsp; &nbsp; d-&gt;fDummy = false;<br>
&nbsp;}<br>
<br></div>
&nbsp;AkonadiRecord::~AkonadiRecord()<br><br>---------<br></div><div><div></div><div><br>SVN commit 915837 by vanrijn:<br>
<br>
Make sure fDummy is correct in case we&#39;re later passed in a valid item (conflict resolution).<br>
CCBUG:181493<br>
<br>
<br>
<br>
&nbsp;M &nbsp;+10 -1 &nbsp; &nbsp; akonadirecord.cc<br>
<br>
<br>
--- branches/KDE/4.2/kdepim/kpilot/conduits/akonadibase/akonadirecord.cc #915836:915837<br>
@@ -50,11 +50,15 @@<br>
 &nbsp; &nbsp; &nbsp; &nbsp;d-&gt;fDummy = false;<br>
&nbsp;}<br>
<br>
+/**<br>
+ * This ctor is _only_ used for dummy records which are temporarily used to delete<br>
+ * data.<br>
+ */<br>
<div>&nbsp;AkonadiRecord::AkonadiRecord( const QString&amp; id ) : d( new AkonadiRecordPrivate )<br>
&nbsp;{<br>
 &nbsp; &nbsp; &nbsp; &nbsp;d-&gt;fTempId = id;<br>
 &nbsp; &nbsp; &nbsp; &nbsp;d-&gt;fDeleted = true;<br>
- &nbsp; &nbsp; &nbsp; d-&gt;fDummy = false;<br>
</div>+ &nbsp; &nbsp; &nbsp; d-&gt;fDummy = true;<br>
&nbsp;}<br>
<br>
&nbsp;AkonadiRecord::~AkonadiRecord()<br>
@@ -123,6 +127,11 @@<br>
 &nbsp; &nbsp; &nbsp; &nbsp;d-&gt;fItem = item;<br>
 &nbsp; &nbsp; &nbsp; &nbsp;// Make sure that we return the right id after updating the itemobject.<br>
 &nbsp; &nbsp; &nbsp; &nbsp;setId( QString::number( <a href="http://item.id" target="_blank">item.id</a>() ) );<br>
+ &nbsp; &nbsp; &nbsp; /**<br>
+ &nbsp; &nbsp; &nbsp; &nbsp;* Assuming we&#39;re being passed a valid item to use, make sure fDummy<br>
+ &nbsp; &nbsp; &nbsp; &nbsp;* is not still false after this.<br>
+ &nbsp; &nbsp; &nbsp; &nbsp;*/<br>
+ &nbsp; &nbsp; &nbsp; setDummy( false );<br>
&nbsp;}<br>
<br>
&nbsp;void AkonadiRecord::synced()<br>
</div></div></div><font color="#888888"><br><br clear="all"><br>-- <br> -[ Jason &#39;vanRijn&#39; Kasper &nbsp; &nbsp;// &nbsp;<a href="http://movingparts.net" target="_blank">http://movingparts.net</a> ]-<br> -[ KDE PIM Developer &nbsp; &nbsp; &nbsp; &nbsp; // &nbsp;<a href="http://www.kde.org" target="_blank">http://www.kde.org</a> &nbsp;]-<br>


 -[ bash fun -&gt; :(){ :|:&amp;};: &nbsp;// &nbsp;Numbers 6:22-26 ]-<br>
</font></blockquote></div><br><br clear="all"><br>-- <br> -[ Jason &#39;vanRijn&#39; Kasper &nbsp; &nbsp;// &nbsp;<a href="http://movingparts.net" target="_blank">http://movingparts.net</a> ]-<br> -[ KDE PIM Developer &nbsp; &nbsp; &nbsp; &nbsp; // &nbsp;<a href="http://www.kde.org" target="_blank">http://www.kde.org</a> &nbsp;]-<br>

 -[ bash fun -&gt; :(){ :|:&amp;};: &nbsp;// &nbsp;Numbers 6:22-26 ]-<br>
</div></div></div><br><br clear="all"><br>-- <br> -[ Jason &#39;vanRijn&#39; Kasper &nbsp; &nbsp;// &nbsp;<a href="http://movingparts.net">http://movingparts.net</a> ]-<br> -[ KDE PIM Developer &nbsp; &nbsp; &nbsp; &nbsp; // &nbsp;<a href="http://www.kde.org">http://www.kde.org</a> &nbsp;]-<br>
 -[ bash fun -&gt; :(){ :|:&amp;};: &nbsp;// &nbsp;Numbers 6:22-26 ]-<br>