<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="http://www.placenet.org/benoit/index.php/feed/rss2/xslt" ?><rss version="2.0"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/"
  xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
  <title>Harvard Business School of Echec - Tag - bug</title>
  <link>http://www.placenet.org/benoit/index.php/</link>
  <atom:link href="http://www.placenet.org/benoit/index.php/feed/tag/bug/rss2" rel="self" type="application/rss+xml"/>
  <description></description>
  <language>fr</language>
  <pubDate>Wed, 12 Nov 2008 14:03:18 +0100</pubDate>
  <copyright></copyright>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Dotclear</generator>
  
    
  <item>
    <title>Le LaTex vieillit mal</title>
    <link>http://www.placenet.org/benoit/index.php/post/2008/10/15/Le-LaTex-vieillit-mal</link>
    <guid isPermaLink="false">urn:md5:ceb46ef994c84ce37df8c8bbd9f87139</guid>
    <pubDate>Wed, 15 Oct 2008 11:24:00 +0200</pubDate>
    <dc:creator>Benoît Dejean</dc:creator>
        <category>bug</category><category>latex</category><category>WTF</category>    
    <description>    &lt;p&gt;Quand j'étais à la fac y a 3/4 ans, j'avais écris tous mes bousins en LaTeX en faisant de mon mieux: UTF-8 partout, lstlisting, etc. A part quelques problèmes, je pouvais compiler aussi bien sur ma Debian que sur les RedHat de ma fac.
&lt;br /&gt;&lt;/p&gt;


&lt;p&gt;J'ai voulu jeter un oeil à des trucs que j'avais écris et là patatra, Debian/texlive ça ne fonctionne plus du tout. lstlisting par en vrille dès qu'il voit du non-ascii alors qu'avant il mangeait ça très bien. Et ça explose sur des tas de petites bêtises ça et là. J'ai un peu décroché de LaTex, j'ai essayé de bricoler ça et là, fait des bugs Debian, mais chaque fois que je corrige un problème, autre chose explose.
&lt;br /&gt;&lt;/p&gt;


&lt;p&gt;Evidemment j'ai pas sauvegardé de PDF.
&lt;br /&gt;&lt;/p&gt;


&lt;p&gt;Et là j'ai envie de dire &amp;quot;si j'avais fait un .doc je pourrais encore le lire&amp;quot;... là je peux même pas compiler.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Thumbnails explosion</title>
    <link>http://www.placenet.org/benoit/index.php/post/2008/09/05/Thumbnails-explosion</link>
    <guid isPermaLink="false">urn:md5:726ce944e7931a819455b7130e57411d</guid>
    <pubDate>Fri, 05 Sep 2008 13:32:00 +0200</pubDate>
    <dc:creator>Benoît Dejean</dc:creator>
        <category>GNOME</category>
        <category>bug</category><category>filesystem</category><category>GNOME</category>    
    <description>    &lt;p&gt;&lt;code&gt;Fri Sep  5 13:02:56 CEST &lt;a href=&quot;http://www.placenet.org/benoit/index.php/post/2008/09/05/#&quot; title=&quot;wafl.dir.size.max:warning&quot;&gt;wafl.dir.size.max:warning&lt;/a&gt;: Directory /vol/vol0/users/luser/.thumbnails/normal/ reached the maxdirsize limit. Reduce the number of files or use the vol options command to increase this limit.&lt;/code&gt;&lt;br /&gt;&lt;/p&gt;


&lt;p&gt;Huhu. There were actually 2 x 135k files under this users's &lt;code&gt;~/.thumbnails/normal&lt;/code&gt; and &lt;code&gt;.thumbnails/fail&lt;/code&gt; directories &lt;img src=&quot;/benoit/themes/default/smilies/smile.png&quot; alt=&quot;:)&quot; class=&quot;smiley&quot; /&gt;
&lt;br /&gt;&lt;/p&gt;


&lt;p&gt;This is RHEL 4.5, there's already a bug about it (i can't find it, but i'm subscribed to it).&lt;br /&gt;&lt;/p&gt;


&lt;p&gt;I can see that ext4 raised it's dirsize limit from 32K to 64k, looks like it's not enough &lt;img src=&quot;/benoit/themes/default/smilies/smile.png&quot; alt=&quot;:)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>/dev/random</title>
    <link>http://www.placenet.org/benoit/index.php/post/2008/05/14/lets-drop-openssl</link>
    <guid isPermaLink="false">urn:md5:df92679804d40407628cca57de03e0fb</guid>
    <pubDate>Wed, 14 May 2008 10:50:00 +0200</pubDate>
    <dc:creator>Benoît Dejean</dc:creator>
        <category>bug</category><category>openssl</category>    
    <description>    &lt;p&gt;About &lt;a href=&quot;http://www.debian.org/security/2008/dsa-1571&quot;&gt;DSA-1571 openssl &lt;/a&gt;, &lt;del&gt;I totally aggree with &lt;a href=&quot;http://blog.drinsama.de/erich/en/linux/2008051401-debian-openssl-desaster&quot;&gt;Eric&lt;/a&gt; ... openssl is just like this &lt;a href=&quot;http://www.xkcd.com/221/&quot;&gt;XKCD strip&lt;/a&gt;. So whatever distro you run, cross your fingers while you generate your keys from so-called uninitialized memory so it's uninitialized enough. Why don't we just drop openssl ?&lt;/del&gt;&lt;/p&gt;


&lt;p&gt;PS: http://wiki.debian.org/SSLkeys gives better explanation. The problem is that one of the cleanups is harmless, while the other one actually commented the code that seeds the PRNG with real entropy. Ouch.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Build a deb package with debug info</title>
    <link>http://www.placenet.org/benoit/index.php/post/2008/05/05/Build-a-deb-with-debug-info</link>
    <guid isPermaLink="false">urn:md5:7ba8c7298ca56466067e3b2624433661</guid>
    <pubDate>Mon, 05 May 2008 16:08:00 +0200</pubDate>
    <dc:creator>Benoît Dejean</dc:creator>
        <category>bug</category><category>debian</category><category>gdb</category><category>sysprof</category>    
    <description>    &lt;p&gt;I often find the need to rebuild a package with debug symbols (if no -dbg is available).&lt;/p&gt;
&lt;pre&gt;
sudo apt-get build-dep &amp;lt;package&amp;gt;
apt-get source &amp;lt;package&amp;gt;
cd &amp;lt;package&amp;gt;
# eventually patch sources
DEB_BUILD_OPTIONS=nostrip dpkg-buildpackage -rfakeroot -uc -us
cd ..
dpkg -i &amp;lt;package&amp;gt;.deb
&lt;/pre&gt;


&lt;p&gt;Et voilà &lt;img src=&quot;/benoit/themes/default/smilies/smile.png&quot; alt=&quot;:)&quot; class=&quot;smiley&quot; /&gt;
Now i can gdb it or run sysprof.
(It's also a very fast way to start hacking on a program)&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Quelques minutes avec Fedora</title>
    <link>http://www.placenet.org/benoit/index.php/post/2008/04/21/Quelques-minutes-avec-Fedora</link>
    <guid isPermaLink="false">urn:md5:a65ebcbea28d38e215c7802e7e4e753c</guid>
    <pubDate>Mon, 21 Apr 2008 09:50:00 +0200</pubDate>
    <dc:creator>Benoît Dejean</dc:creator>
        <category>bug</category><category>distro</category><category>fedora</category><category>WTF</category>    
    <description>    &lt;p&gt;Au travail, la distribution GNU/Linux validée est RHEL 4.5 sur les serveurs et les postes de travail. C'est un peu vieux (Linux 2.6.9, avec un GNOME 2.6 - 2.7), mais ça fonctionne sans problème (j'ai même était surpris que le branchement de clef USB à chaud fonctionne). À mes débuts, vers 2000, j'utilisais RedHat et Mandrake, mais depuis que j'ai découvert Debian, je n'avais jamais ré-utilisé ce type de système.
&lt;br /&gt;&lt;/p&gt;


&lt;p&gt;Donc je me suis dit que j'allais tester Fedora 8, j'ai téléchargé le DVD pour installer ça sur une machine de récupération. L'installation est facile, elle est graphique et ça tient même dans du 800x600, et j'ai choisi un mode minimal (823 paquets quand même): par défaut, le partitionnement utilise LVM et SELinux est en mode strict, tout ça me plaît bien. Il y aussi icedtea dans le tas, c'est sympathique. Quelques minutes plus tard, j'arrive sur mon bureau GNOME 2.20. C'est mignon et très standard. Je veux rajouter un disque dur pour étendre mon / mais je n'arrive pas à trouver d'outils dans le menu, je finis donc par un petit &lt;code&gt;pvcreate/vgextend/lvextend/resize2fs&lt;/code&gt;, rien de bien sorcier.
&lt;br /&gt;&lt;/p&gt;


&lt;p&gt;En passant, il n'y a pas de sudo configuré par défaut, on tape donc le mot de passe root pour les gestes d'admin.
&lt;br /&gt;&lt;/p&gt;


&lt;p&gt;Ensuite je me mets en tête de tester frysk et systemtap puisque qu'apparemment c'est installé: impossible de mettre la main dessus. Rien dans mon &lt;code&gt;PATH&lt;/code&gt;, les paquets sont bien installés, je lis le man, fais un gros &lt;code&gt;find /&lt;/code&gt;, mais impossible de trouver comment les lancer. Je me dis bon je vais déinstaller/supprimer frysk au cas où: &lt;code&gt;yum remove frysk&lt;/code&gt; fonctionne très bien, par contre &lt;code&gt;yum install frysk&lt;/code&gt; ne connaît pas frysk, le mode &lt;code&gt;search&lt;/code&gt; ne trouve rien. Au passage, il n'y a pas de complétion bash pour yum. Je laisse tomber puisque je vois qu'il y a une entrée dans le menu Applications pour ajouter/supprimer des logiciels.
&lt;br /&gt;&lt;/p&gt;


&lt;p&gt;J'ai déménagé deux fois en un mois, je n'ai pas récupéré d'accès à Internet, et quand je lance ce gestionnaire de paquets graphique, il n'arrive logiquement pas à récupérer la liste des paquets: il y a bien un bouton &amp;quot;Annuler&amp;quot; mais il ne fonctionne pas. Quand la MAJ échoue enfin, j'ai le choix entre quitter ou voir l'éditeur de la liste des dépôts. Là c'est la première farce: si je clique sur &amp;quot;Fermer&amp;quot; sans avoir fait de modification, ça quitte le gestionnaire de paquets. Après plusieurs essais, je le comprends, et je ne laisse activer que le dépôt &amp;quot;Install media&amp;quot; qui doit correspondre à mon DVD (même si les détails du dépôt sont entièrement vide). La liste des paquets est enfin disponible. Je suis déjà un peu méfiant, puisque qu'en somme le gestionnaire de paquets n'est pas (trivialement) utilisable si on est pas connecté à Internet. Très mauvais point.
&lt;br /&gt;
&lt;br /&gt;&lt;/p&gt;


&lt;p&gt;J'arrive ensuite sur une liste de méta-paquets répartis en catégories. Ce sont des gros méta-paquets, il y en a peut-être une vingtaine, avec des noms simples tels que &amp;quot;Environnement GNOME&amp;quot;, &amp;quot;Développement GNOME&amp;quot;, etc. Impossible de savoir ce qu'il y a dedans, par contre, on peut savoir en cliquant sur le bouton &amp;quot;Paquets additionnels&amp;quot; ce qu'il n'y pas dedans. Je sélectionne donc &amp;quot;Développement GNOME&amp;quot;, j'installe, c'est un ensemble de paquets très utiles, genre tous les -devel sauf que ça n'a installé aucun outil de développement un peu utile genre style &lt;code&gt;gcc&lt;/code&gt;. Ça m'a quand même installé &lt;code&gt;rcs&lt;/code&gt;... J'y retourne pour installer &amp;quot;Outils de développement&amp;quot;. Je me promène dans les autres catégories pour personnaliser tout ça : au revoir le &amp;quot;Serveur web&amp;quot; (toujours impossible de savoir ce que ça contient), je désélectionne aussi &amp;quot;Bureautique/Productivité&amp;quot; (sic) qui selon sa description doit contenir des afficheurs PDF, etc.
&lt;br /&gt;&lt;/p&gt;


&lt;p&gt;Erreur monumentale.
&lt;br /&gt;&lt;/p&gt;


&lt;p&gt;D'abord les descriptions sont inexactes voire fausses. Ensuite, il n'y pas de gestion de dépendances entre les méta-paquets : en cliquant à droite à gauche pour alléger mon système, ça a un peu déselectionner par hasard &amp;quot;Environnement de bureau GNOME&amp;quot;, sans me le dire bien sur... moi je suis un luser de base, quand on me présente une liste illisible de noms de RPM dans une petite fenêtre, je fais &amp;quot;Appliquer&amp;quot;. Et là je vois l'installateur de paquets afficher des mise à jour (???), et j'aperçois des trucs importants passer à la trappe: nautilus, gnome-volume-manager, etc. Bref il est trop tard. Les applets plantent en rafale. Je me retrouve à la porte, je retombe sur GDM et tente de retourner dans ma session ... xterm. On m'avait pas le coup depuis 10 ans.
&lt;br /&gt;&lt;/p&gt;


&lt;p&gt;Magnifique: en quelques minutes, j'ai flingué mon système en voulant juste supprimer &amp;quot;Sons et vidéos&amp;quot;, &amp;quot;Graphismes&amp;quot;, &amp;quot;Internet basé sur texte&amp;quot; (sic) et quelques trucs comme ça. J'insiste, je n'ai pas fait n'importe quoi. Seulement les dépendances et RPM, même 10 ans après, ça ressemble toujours à de l'escroquerie. Une distribution avec des gestionnaires de paquets aussi défectueux, ça me paraît inutilisable (et pour cause j'ai détruit mon système) qu'on soit utilisateur de base ou ingénieur de métier. Mais qui utilise ça !?
&lt;br /&gt;&lt;/p&gt;


&lt;p&gt;Le DVD finira son weekend à la poubelle. Mes Debian/Sid n'ont pas à s'en faire. Une distribution, c'est des paquets, et Fedora j'ai vu. Pour bien m'assurer du problème, j'ai fait 2 fois l'installation et la manipulation. La première fois, j'ai même eu droit à un plantage du gestionnaire de paquets. Peut-être que Fedora a par ailleurs de bons outils de configuration système (j'ai regardé un peu l'intégration NIS/LDAP/Kerberos ça m'a plu), mais si le plus important est (toujours) défaillant, ça fait fuire.
&lt;br /&gt;
&lt;br /&gt;&lt;/p&gt;


&lt;p&gt;Allez pour la route, une petite capture d'écran pour que vous faire une idée du niveau de crédibilité de la gestion des paquets sous Fedora 8:
&lt;br /&gt;&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://www.placenet.org/benoit/public/armenie.png&quot;&gt;&lt;img src=&quot;http://www.placenet.org/benoit/public/./.armenie_m.jpg&quot; alt=&quot;armenie&quot; style=&quot;display:block; margin:0 auto;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;(Vous pouvez aussi en déduire que personne n'utilise Fedora, en français du moins, sinon ce genre de bourdes aurait était détecté)&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>WTF</title>
    <link>http://www.placenet.org/benoit/index.php/post/2008/03/18/WTF</link>
    <guid isPermaLink="false">urn:md5:c83dad0b0e0be244fc81a7d9c5f286d9</guid>
    <pubDate>Tue, 18 Mar 2008 13:43:00 +0100</pubDate>
    <dc:creator>Benoît Dejean</dc:creator>
        <category>GNOME</category>
        <category>bug</category><category>gnome</category><category>system-monitor</category><category>WTF</category>    
    <description>    &lt;p&gt;system-monitor is getting &lt;a href=&quot;http://thedailywtf.com/Articles/Software-Bloat.aspx&quot; hreflang=&quot;en&quot;&gt;famous&lt;/a&gt; !
&lt;br /&gt;
(This is &lt;a href=&quot;http://bugzilla.gnome.org/show_bug.cgi?id=418652&quot;&gt;bug#418652&lt;/a&gt;.)&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Power management failure</title>
    <link>http://www.placenet.org/benoit/index.php/post/2008/02/21/gnome-power-manager-failure</link>
    <guid isPermaLink="false">urn:md5:ced562db2d58c895327d70579747e952</guid>
    <pubDate>Thu, 21 Feb 2008 00:15:00 +0100</pubDate>
    <dc:creator>Benoît Dejean</dc:creator>
        <category>GNOME</category>
        <category>bug</category><category>emacs</category><category>gnome</category><category>laptop</category><category>reiserfs</category>    
    <description>    &lt;p&gt;Tonight i was hacking on my ibook on my sofa watching Extreme Makeover. Then &amp;quot;peeeeeeeeeeeewwwwwwwwwwwww&amp;quot;. No more battery.
&lt;br /&gt;
I haven't received any warning at all. Maybe gnome-power-manager is a bit broken currently on Debian/sid because of &lt;a href=&quot;http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=452367&quot;&gt;hal/s2ram/whatever&lt;/a&gt; on ppc. I mean s2ram and hal works, but no the way gpm likes them too (i have to manually run s2ram to suspend). But at least , I would have expected gpm to warn me, and then shutdown my laptop. Yep, i've checked, when the battery level becomes critical, it should have poweroff. But that did not happen.&lt;br /&gt;
Now i only trust the battery gauge LEDs.&lt;br /&gt;
Happy End: thanks to reiserfs and emacs, i haven't lost a single line of code &lt;img src=&quot;/benoit/themes/default/smilies/smile.png&quot; alt=&quot;:)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Indiana patches</title>
    <link>http://www.placenet.org/benoit/index.php/post/2007/06/13/Indiana-patches</link>
    <guid isPermaLink="false">urn:md5:84db67a6ce2fc2e01e885f7fdb6fc7a1</guid>
    <pubDate>Wed, 13 Jun 2007 14:55:00 +0200</pubDate>
    <dc:creator>Benoît Dejean</dc:creator>
        <category>GNOME</category>
        <category>bug</category><category>gnome</category><category>libgtop</category><category>patch</category><category>SUN</category><category>system-monitor</category>    
    <description>    &lt;p&gt;Dear Sun Microsystems,
I think your &lt;a href=&quot;http://src.opensolaris.org/source/xref/jds/spec-files/trunk/patches/&quot;&gt;patches&lt;/a&gt; are bullshit. Please drop them or &lt;a href=&quot;http://0pointer.de/blog/projects/project-indiana.html&quot;&gt;as already suggested, do fork&lt;/a&gt;.
&lt;br /&gt;
As the maintainer of system-monitor and libgtop, i have already rejected stupid patches from you. &lt;a href=&quot;http://src.opensolaris.org/source/xref/jds/spec-files/trunk/patches/libgtop-01-solaris.diff&quot;&gt;They&lt;/a&gt; &lt;a href=&quot;http://src.opensolaris.org/source/xref/jds/spec-files/trunk/patches/gnome-system-monitor-01-solaris.diff&quot;&gt;contain&lt;/a&gt; &lt;a href=&quot;http://src.opensolaris.org/source/xref/jds/spec-files/trunk/patches/gnome-applets-03-make-multiload-network-available.diff&quot;&gt;unkown&lt;/a&gt; API changes and a lot of dead code. The &lt;a href=&quot;http://src.opensolaris.org/source/xref/jds/spec-files/trunk/patches/libgtop-01-solaris.diff&quot;&gt;libgtop patch&lt;/a&gt; is the most scary. Here's a tip: libgtop code is OS specific (linux, bsd, solaris, etc have their own separate implementation) so copying linux code to solaris is obviously NOT going to work.
&lt;br /&gt;
I can see that some of your patches are actually OK, but your people don't seem to understand how we work.
&lt;br /&gt;
This reminds me of that private mail where you asked me to re-license libgtop to LGPL because you had some kind of packaging issues ... because you wanted to install libgtop in /foo/bar and instead of /foo/baz. Bad for you.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>a system crash ruined my weekend :/</title>
    <link>http://www.placenet.org/benoit/index.php/post/2007/06/03/a-system-crash-ruined-my-weekend-%3A/</link>
    <guid isPermaLink="false">urn:md5:f96a6df1334da9582c6faf0a538e1a93</guid>
    <pubDate>Sun, 03 Jun 2007 19:34:00 +0200</pubDate>
    <dc:creator>Benoît Dejean</dc:creator>
        <category>GNOME</category>
        <category>angry</category><category>bug</category><category>crash</category><category>fuse</category><category>gnome</category><category>gnomevfs</category><category>nautilus</category><category>Scrubs</category><category>smbnetfs</category>    
    <description>    &lt;p&gt;I was trying to move some Scrubs xvid from my laptop to my large screen computer using samba. I first tried gnomevfs but it was too slow : it was painfully reaching 1MiB/s using 100% CPU which is not right when moving 4.4GiB. I know i could directly use cifs instead but i switched to smbnetfs (FUSE Samba browser) which can reach easily 10MiB/s (~physical limit, i think smbnetfs has 10% overhead compared to a manual mount). smbnetfs is usually fine but using it with nautilus is the WORST idea i had since a long time. File copy did not work because nautilus claimed there was no space on device. I was about to quit but i wanted to also delete some files. I clicked 'move to trash' ... worst thing ever : my computer got instantly locked. I don't know who (gnomevfs, nautilus or fuse) started a fork bomb or a syscall storm but it was quite effective. I couldn't even log in on a tty. It's the first time since i use GNU/Linux that i lock my computer that hard. Hard reboot and data loss.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>firefox bad ui</title>
    <link>http://www.placenet.org/benoit/index.php/post/2007/05/30/mozilla-bad-ui</link>
    <guid isPermaLink="false">urn:md5:dd26b64e8ee4e5ed413428e691dd76db</guid>
    <pubDate>Wed, 30 May 2007 12:33:00 +0200</pubDate>
    <dc:creator>Benoît Dejean</dc:creator>
        <category>bug</category><category>firefox</category>    
    <description>    &lt;p&gt;I don't like the way bugs are handled on Mozilla's bugzilla. The Firefox Preferences UI is totally screwed :&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=377214&quot;&gt;&lt;img src=&quot;https://bugzilla.mozilla.org/attachment.cgi?id=261309&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
which is obviously an arch-dependant bug.
&lt;br /&gt;
&lt;em&gt;Edit: Thanks everyone who also reported the same bug. It is actually a 2 year old &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=283697&quot;&gt;bug&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Iterate &amp; Erase</title>
    <link>http://www.placenet.org/benoit/index.php/post/2007/04/22/Iterate-Erase</link>
    <guid isPermaLink="false">urn:md5:c457d512cc4c20934fcc26c18051f7b5</guid>
    <pubDate>Sun, 22 Apr 2007 00:51:00 +0200</pubDate>
    <dc:creator>Benoît Dejean</dc:creator>
        <category>bug</category><category>cpp</category><category>STL</category>    
    <description>    &lt;p&gt;I have discovered a nice bug in my code. I had some stuff about iterating a &lt;code&gt;std::list&amp;lt;&amp;gt;&lt;/code&gt; and removing some elements at the same time. Like the following :&lt;/p&gt;

&lt;pre&gt;
std::list&amp;lt;&amp;gt; l;

iterator it(l.begin());

while (it != l.end()) {
	if (...)
		it = l.erase(it);
	else
		++it;
}
&lt;/pre&gt;


&lt;p&gt;Then i moved from &lt;code&gt;std::list&amp;lt;&amp;gt;&lt;/code&gt; to &lt;code&gt;std::set&amp;lt;&amp;gt;&lt;/code&gt; (ordered set). The code didn't compile as is because &lt;code&gt;std::set&amp;lt;&amp;gt;::erase&lt;/code&gt; returns &lt;code&gt;void&lt;/code&gt;. The STL documentation says &lt;q&gt;Erasing an element from a set also does not invalidate any iterators...&lt;/q&gt;. OK then, no return value.&lt;/p&gt;

&lt;pre&gt;
std::set&amp;lt;&amp;gt; s;

iterator it(s.begin());

while (it != s.end()) {
	if (...)
		s.erase(it);
	++it;
}
&lt;/pre&gt;


&lt;p&gt;It worked nicely for a long time. But once i got a double free crash. In order to debug it, i added many print. For example &lt;code&gt;{1 2 3 5 6 7} - {3}&lt;/code&gt; shoud have printed &lt;code&gt;{1 2 5 6 7}&lt;/code&gt; but instead i got &lt;code&gt;{1 2 2 5 6 7}&lt;/code&gt; or &lt;code&gt;{1 5 6 7 2}&lt;/code&gt; !&lt;/p&gt;


&lt;p&gt;So i read again the documentation : &lt;q&gt;Erasing an element from a set also does not invalidate any iterators, &lt;ins&gt;except, of course, for iterators that actually point to the element that is being erased.&lt;/ins&gt;&lt;/q&gt;. Bon sang !&lt;/p&gt;


&lt;p&gt;The correct way to do it :&lt;/p&gt;

&lt;pre&gt;
std::set&amp;lt;&amp;gt; s;

iterator it(s.begin())

while (it != s.end()) {
	iterator next(it);
	++next;
	if (...)
		s.erase(it);
	it = next;
}
&lt;/pre&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>libsexy bugs</title>
    <link>http://www.placenet.org/benoit/index.php/post/2007/03/02/libsexy-bugs</link>
    <guid isPermaLink="false">urn:md5:9bdffaa4c67cccef7a5228b198e4d20d</guid>
    <pubDate>Fri, 02 Mar 2007 11:15:00 +0100</pubDate>
    <dc:creator>Benoît Dejean</dc:creator>
        <category>GNOME</category>
        <category>bug</category><category>gnome</category><category>system-monitor</category>    
    <description>    &lt;p&gt;Hey &lt;a href=&quot;http://www.chipx86.com/blog/?p=205&quot;&gt;chipx86&lt;/a&gt;, would you please have a look at &lt;a href=&quot;http://bugzilla.gnome.org/buglist.cgi?product=libsexy&quot;&gt;libsexy bugzilla&lt;/a&gt; ?
There are a couple of &lt;a href=&quot;http://bugzilla.gnome.org/show_bug.cgi?id=355252&quot;&gt;annoying&lt;/a&gt; &lt;a href=&quot;http://bugzilla.gnome.org/show_bug.cgi?id=354559&quot;&gt;bugs&lt;/a&gt; about &lt;code&gt;sexy_treeview&lt;/code&gt; so I had to disable libsexy in system-monitor 2.17.x.&lt;/p&gt;


&lt;p&gt;Thanks.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>gnome-system-monitor 2.17 has been compromised</title>
    <link>http://www.placenet.org/benoit/index.php/post/2007/02/28/gnome-system-monitor-217-has-been-compromised</link>
    <guid isPermaLink="false">urn:md5:6ad18d1263b4b83321c65b141af18989</guid>
    <pubDate>Wed, 28 Feb 2007 10:45:00 +0100</pubDate>
    <dc:creator>Benoît Dejean</dc:creator>
        <category>GNOME</category>
        <category>bug</category><category>gnome</category><category>security</category><category>system-monitor</category>    
    <description>    &lt;p&gt;Last night, Matthias Clasen and Shaun McCance helped me fix a gnome-doc-utils bug in gnome-system-monitor tarball. I then released gnome-system-monitor-2.17.9&lt;strong&gt;3&lt;/strong&gt; because &lt;strong&gt;I&lt;/strong&gt; am the maintainer.&lt;/p&gt;


&lt;p&gt;Then, somebody, who owns a regular svn/ssh account, has commited without approval unreviewed content to gnome-system-monitor trunk. He also tagged the wrong way. And in the end, he released gnome-system-monitor-2.17.94. I don't know anything about this man. I've just got an email from him to tell what he has done. Update: he even created&amp;amp;closed a &lt;a href=&quot;http://bugzilla.gnome.org/show_bug.cgi?id=412854&quot;&gt;bug&lt;/a&gt; against system-monitor.&lt;/p&gt;


&lt;p&gt;&lt;ins&gt;&lt;strong&gt;gnome-system-monitor 2.17.94 is not official and not trusted at all. DO NOT USE IT.&lt;/strong&gt;&lt;/ins&gt;&lt;/p&gt;


&lt;p&gt;The following are &lt;ins&gt;unreviewed&lt;/ins&gt;, &lt;ins&gt;not trusted&lt;/ins&gt; and have &lt;ins&gt;unknown content&lt;/ins&gt; :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;SVN tag &lt;code&gt;GNOME_SYSTEM_MONITOR_2_17_94&lt;/code&gt; and revision 1935, 1936, 1937 and 1938&lt;/li&gt;
&lt;li&gt;gnome-system-monitor 2.17.94 tarballs on the GNOME ftp server.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Today 28/02/2007,  only the following are &lt;ins&gt;trusted&lt;/ins&gt; and &lt;ins&gt;official&lt;/ins&gt; :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;SVN tag &lt;code&gt;tags/GNOME_SYSTEM_MONITOR_2_17_93&lt;/code&gt; and revisions up to 1934&lt;/li&gt;
&lt;li&gt;gnome-system-monitor 2.17.93 tarballs on the GNOME ftp server.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;Security infrastructure&lt;/h3&gt;

&lt;p&gt;It would be nice to be able to GPG-sign tarballs that are uploaded to the GNOME FTP server.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>evolution + bogofilter</title>
    <link>http://www.placenet.org/benoit/index.php/post/2007/02/17/evolution-bogofilter</link>
    <guid isPermaLink="false">urn:md5:af1e28d7fc8cef810448a81f4012594f</guid>
    <pubDate>Sat, 17 Feb 2007 02:14:00 +0100</pubDate>
    <dc:creator>Benoît Dejean</dc:creator>
        <category>GNOME</category>
        <category>bogofilter</category><category>bug</category><category>evolution</category><category>gnome</category><category>memory</category><category>ruby</category><category>spam</category>    
    <description>    &lt;p&gt;There is &lt;a href=&quot;http://bugzilla.gnome.org/show_bug.cgi?id=272411&quot;&gt;no standard bogofilter plugin&lt;/a&gt; for evolution. I am not happy with spamassassin/spamd/spamc CPU and RAM requirements. Like 'sa-learn --version' which takes 1.8s even on warm start...&lt;/p&gt;


&lt;p&gt;So I wrote a tiny (stupid) ruby script to emulate SpamAssassin programs with bogofilter.&lt;/p&gt;

&lt;pre&gt;
#!/usr/bin/env ruby

# 1 spam, 0 not-spam
def bogo_exec(mode)

  system 'bogofilter', '-l', mode

  exit case $?.exitstatus
    when 0
    1
    else
    0
  end
end

if ARGV.include?('--version') then
  print &amp;quot;SpamAssassin version 3.1.0-bogo
&amp;quot;
  exit
end

if ARGV.include?('--spam') then
  bogo_exec '-s'
end

if ARGV.include?('--ham') then
  bogo_exec '-n'
end

if ARGV.include?('-c') or ARGV.include?('--exit-code') then
  bogo_exec '-u'
end
&lt;/pre&gt;


&lt;p&gt;I then created symlinks &lt;code&gt;{spamassassin, spamc, spamd, sa-learn} -&amp;gt; spam.rb&lt;/code&gt;  in my &lt;code&gt;PATH&lt;/code&gt;. Maybe it WAS incomplete and broken, but it NOW works. No more daemon. Mail retrieval is no longer CPU-bound. Evolution and I are happy.&lt;/p&gt;


&lt;h3&gt;Update&lt;/h3&gt;

&lt;p&gt;I have fixed the script.
To feed spam/ham here is what i did :&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;selected a bunch of messages in evolution and Saved As '/tmp/mails'&lt;/li&gt;
&lt;li&gt;run &lt;code&gt;sa-learn --spam &amp;lt; /tmp/mails&lt;/code&gt; or &lt;code&gt;sa-learn --ham &amp;lt; /tmp/mails&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>signedness fun</title>
    <link>http://www.placenet.org/benoit/index.php/post/2007/02/12/signedness-fun</link>
    <guid isPermaLink="false">urn:md5:5a7547d9d8f0bad9520257b311c71cf8</guid>
    <pubDate>Mon, 12 Feb 2007 11:22:00 +0100</pubDate>
    <dc:creator>Benoît Dejean</dc:creator>
        <category>GNOME</category>
        <category>bug</category><category>gnome</category><category>libgtop</category><category>system-monitor</category>    
    <description>    &lt;p&gt;3 years ago, i deleted code that i didn't understand in libgtop. It was a mess about bitwise shift and xor.
Then came &lt;a href=&quot;http://bugzilla.gnome.org/show_bug.cgi?id=406280&quot;&gt;these&lt;/a&gt; &lt;a href=&quot;http://bugzilla.gnome.org/show_bug.cgi?id=406265&quot;&gt;bugs&lt;/a&gt; about system-monitor displaying 17179869184.0 GiB. This is about available disk space (you know, the 10% reservation for root, etc). On *BSD, available disk space can be negative... so you can get &lt;code&gt;df&lt;/code&gt; to reports negative capacity :&lt;/p&gt;

&lt;pre&gt;
$ df -h /
Filesystem      Size    Used   Avail Capacity  Mounted on
/dev/ad10s1a    496M    457M   -514K   100%    /
&lt;/pre&gt;


&lt;p&gt;&lt;em&gt;(This reminds me of mfs fun with OpenBSD &lt;img src=&quot;/benoit/themes/default/smilies/wink.png&quot; alt=&quot;;)&quot; class=&quot;smiley&quot; /&gt;&lt;/em&gt;&lt;/p&gt;


&lt;p&gt;libgtop uses statvfs/statfs functions to get disk space usage : &lt;code&gt;struct statvfs&lt;/code&gt; members' type is &lt;code&gt;fsblkcnt_t&lt;/code&gt; which is an unsigned integer. This means that some kernels store signed values as unsigned integers. Hence the old fun code i deleted. &lt;code&gt;glibtop_fsusage&lt;/code&gt; members are &lt;code&gt;guint64&lt;/code&gt; so there is not signedness mismatch between libgtop and the system.&lt;/p&gt;


&lt;p&gt;As I was unable to get negative values with linux 2.6.20 and ext3, I dig into &lt;code&gt;GNU df&lt;/code&gt; code and found the very same code that was in libgtop, i guess someone copy&amp;amp;pasted it into libgtop a long time ago. This code does funny things to handle integers with the top bit set as negative integers.&lt;/p&gt;


&lt;p&gt;I ended to this madness by ensuring available disk space is &amp;lt;= to free disk space.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Bézier Curves</title>
    <link>http://www.placenet.org/benoit/index.php/post/2007/01/25/Bezier-Curves</link>
    <guid isPermaLink="false">urn:md5:d92827fa6104bb188332496753037dfb</guid>
    <pubDate>Thu, 25 Jan 2007 08:39:00 +0100</pubDate>
    <dc:creator>Benoît Dejean</dc:creator>
        <category>GNOME</category>
        <category>bug</category><category>cairo</category><category>gnome</category><category>system-monitor</category>    
    <description>    &lt;p&gt;I have commited a great but simple &lt;a href=&quot;http://bugzilla.gnome.org/show_bug.cgi?id=400406&quot;&gt;patch&lt;/a&gt; from Lucas Mazzardo Veloso . It uses Bezier Curves to draw the load graph instead of lines thanks to cairo. Sorry, dotclear 2.0-beta5.4 is buggy, i can't attach a screenshot.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Art</title>
    <link>http://www.placenet.org/benoit/index.php/post/2007/01/18/Art</link>
    <guid isPermaLink="false">urn:md5:36fd76db80220963067f30b6ec0c1598</guid>
    <pubDate>Thu, 18 Jan 2007 21:26:00 +0100</pubDate>
    <dc:creator>Benoît Dejean</dc:creator>
        <category>GNOME</category>
        <category>bug</category><category>gnome</category><category>system-monitor</category>    
    <description>    &lt;p&gt;I've &lt;a href=&quot;http://bugzilla.gnome.org/show_bug.cgi?id=377144&quot;&gt;killed&lt;/a&gt; the GNOME logo in System-Monitor's System tab to please people. I'm weak. Now it looks so empty :/&lt;/p&gt;


&lt;p&gt;Anyway, thank you &lt;a href=&quot;http://live.gnome.org/BaptisteMilleMathias&quot;&gt;crevette&lt;/a&gt;, your &lt;a href=&quot;http://svn.gnome.org/viewcvs/*checkout*/gnome-system-monitor/trunk/pixmaps/side.png?rev=1808&quot;&gt;logo&lt;/a&gt; was cool.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>tranquille</title>
    <link>http://www.placenet.org/benoit/index.php/post/2007/01/14/tranquille</link>
    <guid isPermaLink="false">urn:md5:c47bb0d710e31e746a6c9492e05f1c08</guid>
    <pubDate>Sun, 14 Jan 2007 15:26:00 +0100</pubDate>
    <dc:creator>Benoît Dejean</dc:creator>
        <category>GNOME</category>
        <category>bug</category><category>gnome</category>    
    <description>    &lt;p&gt;J'ai retrouvé ma tranquillité depuis que j'ai mis un filtre dans evolution pour supprimer automatiquement les mails de bugzilla provenant de bugbuddy. Je n'ai plus peur d'ouvrir mon courrier le soir quand je rentre !&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>more bug-buddy spam</title>
    <link>http://www.placenet.org/benoit/index.php/post/2007/01/03/more-bug-buddy-spam</link>
    <guid isPermaLink="false">urn:md5:9ee9855b3635b577da93441eef79549d</guid>
    <pubDate>Wed, 03 Jan 2007 00:00:00 +0100</pubDate>
    <dc:creator>Benoît Dejean</dc:creator>
        <category>GNOME</category>
        <category>bug</category><category>gnome</category>    
    <description>    &lt;p&gt;I'm back from holidays. My mailbox is full of bug-buddy spam. Again. I have killed all system-monitor bug-buddy generated bugs using bugzilla great batch interface. Nothing better than killing 20 bugs at once.&lt;/p&gt;


&lt;h3&gt;SVN&lt;/h3&gt;

&lt;p&gt;I'm re-checkouting all the gnome modules i need from devel. SVN runs just fine. I would have appreciated if the svn migration team had converted &lt;code&gt;.cvsignore&lt;/code&gt; to &lt;code&gt;svn-ignore&lt;/code&gt; property but that's easy to deal with.
I'm using ssh &lt;code&gt;ControlMaster&lt;/code&gt; option. It doesn't work with SVN, so needed to disable multiplexing for svn.gnome.org. It doesn't work because svn sequentially opens and closes 2/3/4 ssh connections for each command. This is quite slow on my poor high-latency DSL link. I'll look for a bug about this tomorrow. Anyway, SVN is much better than CVS &lt;img src=&quot;/benoit/themes/default/smilies/smile.png&quot; alt=&quot;:)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Bugzilla fun</title>
    <link>http://www.placenet.org/benoit/index.php/post/2006/12/13/Bugzilla-fun</link>
    <guid isPermaLink="false">urn:md5:c25672321fc8cde9f6f42a0b01765246</guid>
    <pubDate>Wed, 13 Dec 2006 12:45:00 +0100</pubDate>
    <dc:creator>Benoît Dejean</dc:creator>
        <category>GNOME</category>
        <category>bug</category><category>gnome</category>    
    <description>    &lt;p&gt;''What were you doing when the application crashed?&lt;br /&gt;
Changing clothes to get ready for work.''&lt;/p&gt;


&lt;p&gt;For the first time, a &lt;a href=&quot;http://bugzilla.gnome.org/show_bug.cgi?id=385248&quot;&gt;bug&lt;/a&gt; makes me smile &lt;img src=&quot;/benoit/themes/default/smilies/smile.png&quot; alt=&quot;:)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;</description>
    
    
    
      </item>
    
</channel>
</rss>