<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Thu, Aug 11, 2016 at 5:02 AM, Jonas Maebe <span dir="ltr"><<a href="mailto:jonas.maebe@elis.ugent.be" target="_blank">jonas.maebe@elis.ugent.be</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span>Bart wrote:<br>
> On 8/11/16, silvioprog <<a href="mailto:silvioprog@gmail.com" target="_blank">silvioprog@gmail.com</a>> wrote:<br>
><br>
>> ... so I decided to research how Delphi<br>
>> implements it, because I can't get any error on it, and I've seen it<br>
>> implements a "lock-free initialization" technique<br>
>> <<a href="http://stackoverflow.com/a/24657705/3268398" rel="noreferrer" target="_blank">http://stackoverflow.com/a/24<wbr>657705/3268398</a>> using the XE's<br>
>> AtomicCmpExchange() function before return any TEncoding global instance.<br>
> ......<br>
>> I could send a patch to solve it,<br>
><br>
> I hope you did not look at the Delphi sourcecode to see how it was<br>
> implemented, because that would now make a "clean room" implementation<br>
> on our side almost impossible.<br>
<br>
</span>It would make a clean room implementation by Silvio himself impossible,<br>
but anyone that reads his description and writes code based on that<br>
description is still clean (as long as they did not also look at the<br>
Delphi source code).</blockquote></div><div><br></div><div>I've opened a new issue sending a possible patch: <a href="http://bugs.freepascal.org/view.php?id=30462" target="_blank">http://bugs.freepascal.<wbr>org/view.php?id=30462</a>.</div><div><br></div>-- <br><div data-smartmail="gmail_signature"><div dir="ltr"><div>Silvio Clécio</div></div></div>
</div></div>