<div dir="ltr">2013/10/24 LacaK <span dir="ltr"><<a href="mailto:lacak@zoznam.sk" target="_blank">lacak@zoznam.sk</a>></span><br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

silvioprog  wrote / napísal(a):<div class="im"><br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
Hello,<br>
<br>
This morning, I compiled a code using FPC (Windows, rev. 2013/09/01), after that, my tests using dataset.locate has stopped.<br>
<br>
The Locate method locates record, even when it does not exists. The problem occurs only with varchar fields, in integer fields it works fine.<br>
<br>
In attachment I'm sending a small project to reproduce it. Here in my machine I made two tests, please see the log below:<br>
<br>
Result in FPC 2.6.2:<br>
<br>
test.exe<br>
output: N<br>
output: N<br>
<br>
Result in FPC 2.7.1:<br>
<br>
test.exe<br>
output: N<br>
output: Y<br>
<br>
Can you test it in FPC from trunk?<br>
</blockquote></div>
I guess, that root of this problem is same like in bug report: <a href="http://bugs.freepascal.org/view.php?id=25016" target="_blank">http://bugs.freepascal.org/<u></u>view.php?id=25016</a><br>
For sorting/locating are used these string comparasion function:<br>
 AnsiCompareText resp. AnsiCompareStr<br>
Can you test directly  these functions in any simple string comparation test ?<br>
I expect, that these functions will return wrong results ?<br>
(may be that string encoding enters into play also? ...  )<br>
-Laco.</blockquote></div><div><br></div><div>In this tests:</div><div><br></div><div><div>  if AnsiCompareStr('a', 'a') = 0 then</div><div>    WriteLn('Yes')</div><div>  else</div><div>    WriteLn('No'); </div>

</div><div><br></div><div><div><div>  if AnsiCompareText('a', 'a') = 0 then</div><div>    WriteLn('Yes')</div><div>  else</div><div>    WriteLn('No'); </div></div></div><div><br></div><div>

Both returns "Yes".</div><div><br></div>-- <br>Silvio Clécio<br>My public projects - <a href="http://github.com/silvioprog" target="_blank">github.com/silvioprog</a>
</div></div>