Hi there, I had a look at the above mentioned function, and I think it's not working correctly in all cases; I see the culprit in this part: if (GetType(mimeString) != B_OK) { // no type available -- get the "application/octet-stream" icon BMimeType type("application/octet-stream"); error = type.GetIcon(icon, k); success = (error == B_OK); } First, the generic MIME type is also defined as a constant, but it shouldn't be taken for all files. Instead, it should be differentiated by file type. I.e. it should take "application/x-vnd.Be-directory" for directories, "application/x-vnd.Be-volume" for volumes, etc. BTW for a list of these types, have a look at: http://cvs.sourceforge.net/viewcvs.py/opentracker/opentracker/tracker/MimeTypes.h?rev=1.1.1.1&view=auto I also think that we should put those into the public headers as well (matching the B_FILE_MIME_TYPE constant). Bye, Axel.