Edscott, how about using the icon-theme.cache generated by gtk-update-icon-cache instead? There are several advantages: First - and foremost - the cache is shared by all Gtk+ apps and therefore it’s likely that most parts of the cache are already loaded. Second, both the image data and meta-data is contained within the icon cache, and thereby safes you a lot of disk I/O in the common case. And last but not least, there’s already an implementation of the icon cache, namely GtkIconTheme.