Weak references – or why you should enable ReportMemoryLeaksOnShutdown

I was enhancing my dzMdbViewer tool with a view that shows the table structure rather than the data of the table, when I out of curiosity added ReportMemoryLeaksOnShutdown := True; to the source code. I found some memory leaks that were easy to fix (and which I would probably have fixed anyway later when reviewing … Continue reading Weak references – or why you should enable ReportMemoryLeaksOnShutdown

Adding remote repositories to your mercurial.ini

Among a lot of other things you can add names for remote repositories to your mercurial.ini so you can access them without having to type that long path. This can be quite convenient e.g. [path] dzlib=ssh://twm@hg.code.sf.net/p/dzlib/hgdzmaincode allows me to clone a copy of my dzlib+tools main repository on sourceforge like this: hg clone dzlib dzlib+tools … Continue reading Adding remote repositories to your mercurial.ini

Avoiding long timeouts when connecting to Mercurial repositories on SourceForge

As described in a previous post I initially had some problems connecting to Mercurial repositories on SourceForge that went away without me changing anything. In that post I give the following entry for mercurial.ini: [ui] ssh="C:\Program Files (x86)\PuTTY\plink.exe" -ssh -agent -v -i "D:\path\to\my\private_key.ppk" While this works well, if Pageant is already running and has loaded … Continue reading Avoiding long timeouts when connecting to Mercurial repositories on SourceForge

TStringList.CaseSensitive

Did you know that TStringList has got a property called CaseSensitive? It's no surprise that it is used when comparing the strings while sorting. But did you know that it defaults to FALSE? WTF? (This is Delphi 2007.)