KMimeType::findByUrl() returning null pointer
    David Faure 
    faure at kde.org
       
    Mon Sep 18 08:08:18 BST 2006
    
    
  
On Saturday 16 September 2006 14:04, Hamish Rodda wrote:
> Hi,
> 
> I'm encountering a crash in KFileInfo from a dereference of a null mimetype 
> pointer in QString KFileItem::mimetype() const.  It turns out that the file 
> (kdelibs/kate/tests/highlight.asm-avr) is detected as text/x-assembler, and 
> there is no corresponding desktop file so findByUrl() returns null.
How does it get detected as such? I see no mention of text/x-assembler in kdelibs/kio/magic.
> What is the correct fix here (other than creating the x-assembler desktop 
> file, of course)... should KMimeType::findByUrl() check that the mimetype it 
> has looked up is valid before returning it? (The docs say that a null pointer 
> cannot be returned)
Ah. Yes. In KDE4 I changed KMimeType::mimeType(name) to return null if a mimetype
of that name doesn't exist (it was just too confusing and broken in kde3), but findByUrl
should still return application/octet-stream if it can't determine the mimetype. So ensuring
that it doesn't return null would be a good idea; but I'm still wondering where it got
text/x-assembler from.
-- 
David Faure, faure at kde.org, sponsored by Trolltech to work on KDE,
Konqueror (http://www.konqueror.org), and KOffice (http://www.koffice.org).
    
    
More information about the kde-core-devel
mailing list