title: QString::compare returns 0 even though the two strings are different
body: <p>When I supply QString::compare with two strings:</p>
  
  <pre><code>for(int i = 0; i &lt; ui-&gt;tableWidget-&gt;rowCount(); i++
  {
      // assuming searchDialog is a custom-made class with method getResultMap
      QMap&lt;QString, int&gt; result = searchDialog-&gt;getResultMap();
      QString phrase = result.keys().at(0);
      int itemFound = 1;    
  
      if(itemFound == QString::compare(ui-&gt;tableWidget-&gt;item(i, searchByColumn)-&gt;text(),  
                                                         phrase, 
                                                         Qt::CaseInsensitive)) == 0)
      {
           // Enters here even though the strings differ
      }
  }
  </code></pre>
  
  <p>It always returns 0 even though the strings are e.g:</p>
  
  <pre><code>"Car"
  "Horse"
  "Human"
  </code></pre>
  
  <p>However when I do such condition:</p>
  
  <pre><code>if(ui-&gt;tableWidget-&gt;item(i, searchByColumn)-&gt;text() == phrase)
  {
      qDebug() &lt;&lt; "Entered the condition";
  }
  </code></pre>
  
  <p>Than the strings appear to be different (it does not enter the condition).</p>
  
  <p>What could be the possible reason?</p>