public string GetLogMessage(int revision) { string message; lock (_messages) _messages.TryGetValue(revision, out message); if (message == null) { SvnClient client = AllocSvnClient(); try { if (!client.GetRevisionProperty(_uri, new SvnRevision(revision), "svn:log", out message)) { message = ""; } } finally { FreeSvnClient(client); } lock (_messages) _messages[revision] = message; } return(message); }