synopse/mORMot

Correct criticalsection managment and move some declaration to handle HttpAPI in Windows.

David-Nardi opened this issue · 2 comments

OK, I'me aware to use Git/TortoiseGit so I send an issue.

There is a problem in criticalsection mamagment so I change SynCommons.pas :

  • Replace fLocked to Integer frm boolean (to manage nested calls)
  • Correct function TSynLocker.TryLock function to NOT CHECK fLocked !

And I have move declaration and procedure to handle correctly SSL certificate (I create separate unit to do this) in SynCrtSock.pas

mORMot.zip

Should have been fixed inbetween by 136f3b0

Moving all http.sys declarations into interface part is a huge step, which breaks existing unit layout.

It has been done properly in mORMot 2, and I guess https://github.com/synopse/mORMot2/blob/master/src/lib/mormot.lib.winhttp.pas is what you expect in fact.

But for mORMot 1, I wouldn't do this, it would be confusing for sure for the SynCrtSock unit which is already huge.

Please discuss any further in the forum.