> The difference is, there are a time race between icon reading,<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">
> and displaying, at times, as the file is a tempfile,<br>
> at the moment of display was already deleted.<br>
<br>
</div>Is the code deleting the file?  Otherwise who deletes it?<br>
<br>
In /etc/fstab I see the line:<br>
<br>
/tmp    /tmp    tmpfs    rw,size=50m    0    0<br>
<br>
So unless /tmp is filled by 50 megas of files or the XO is rebooted,<br>
the icon should stay there, no?<br>
</blockquote></div><br><div>It's a tempfile [1] then python delete it magically after closed.</div><div>See ActivityBundle.get_icon()</div><div>In fact the code have a comment:</div><div><div>        # FIXME: this should return the icon data, not a filename, so that</div>
<div>        # we don't need to create a temp file in the zip case</div></div><div>And we are returning util.TempFilePath, where there are code to delete </div><div>pending files if needed.</div><div><br></div><div>I think in this case, the proper solution is get the icon data</div>
<div>(adding a method get_icon_data) and put it in the listmodel.</div><div>(Only for the .xo cases)</div><div><br></div><div>In the meantime, have the icons cached in a directory is no so bad.</div><div>Maybe we can do it in /tmp/ to get it deleted at startup</div>
<div>without need more</div><div><br></div><div>[1] <a href="http://docs.python.org/2/library/tempfile.html">http://docs.python.org/2/library/tempfile.html</a></div>