<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
    <tr>
     <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="http://reviewboard.kde.org/r/4442/">http://reviewboard.kde.org/r/4442/</a>
     </td>
    </tr>
   </table>
   <br />


<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('http://reviewboard.kde.orgrb/images/review_request_box_top_bg.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
 <tr>
  <td>

<div>Review request for kdelibs.</div>
<div>By Anssi Hannula.</div>





<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0;">A mimetype glob is put into the "fast pattern" list when its weight is 50, it is in simple "*.foo" format, and it is case-insensitive (KBuildMimeTypeFactory::savePatternLists()). The pattern is lowercased when put into the fast pattern list. When MimeTypeFactory::findFromFastPatternDict() finds a match for a file extension, it checks the returned mimetype to make sure its patterns() list contains the searched pattern. However, the patterns() list contains the patterns in their original format, which may contain mixed case characters, therefore failing the test and the correct mimetype is not returned.

Fix that by adding Qt::CaseInsensitive to the .contains() call.

The two other pattern lists (low weight patterns and high weight patterns) are not affected as KMimeTypeFactory::findFromOtherPatternList() doesn't recheck the patterns() list of the returned mimetype.

This bug affects 4.4 branch as well.</pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0;">"kde-open file.EZHex", while the MIME type was defined with a glob "*.EZHex" (from libconcord/congruity).
Before the patch it was opened in a web browser (*.EZHex files are XML based data), after the patch it is opened in the correct application associated with "*.EZHex".
Testing was done on a KDE 4.4 system, but the relevant code seems to be the same in trunk.</pre>
  </td>
 </tr>
</table>




<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>/trunk/KDE/kdelibs/kdecore/services/kmimetypefactory.cpp <span style="color: grey">(1141627)</span></li>

</ul>

<p><a href="http://reviewboard.kde.org/r/4442/diff/" style="margin-left: 3em;">View Diff</a></p>




  </td>
 </tr>
</table>




  </div>
 </body>
</html>