private IntPtr SvnClientBlameReceiverWrapper(IntPtr baton, long lineNo, int revision, IntPtr author, IntPtr date, IntPtr line, IntPtr pool) { SvnError err = SvnError.NoError; SvnClient.BlameReceiver func = mFunc as SvnClient.BlameReceiver; try { Debug.Write(String.Format("[Callback:{0}]SvnClientBlameReceiver({1:X},{2},{3},{4},{5},{6},{7})...", func.Method.Name, baton.ToInt32(), lineNo, revision, new AprString(author), new AprString(date), new AprString(line), new AprPool(pool))); err = func(baton, lineNo, revision, new AprString(author), new AprString(date), new AprString(line), new AprPool(pool)); Debug.WriteLine((err.IsNoError) ? "Return(NoError)" : String.Format("Return({0})", err.Message)); } catch (SvnException e) { err = SvnError.Create(e.AprErr, SvnError.NoError, e.Message); } catch (Exception e) { err = SvnError.Create(215000, SvnError.NoError, e.Message); } return(err); }
// svn_client_blame_receiver_t Wrapper public SvnDelegate(SvnClient.BlameReceiver func) { mFunc = func; mWrapperFunc = new Svn.svn_client_blame_receiver_t(SvnClientBlameReceiverWrapper); }