##// END OF EJS Templates
commitctx: stop using weakref proxy for transaction...
commitctx: stop using weakref proxy for transaction This weakref proxy was introduced in 2007 by 30d4d8985dd8. If I understand it correctly, the logic at that time was relying on the transaction destructor, triggered at garbage collection time to rollback failed transaction. passing the object to sub function directly mean it would live in the function scope and be trapped in the traceback on exception, leading to the transaction rollback too late in some case. Modern transaction usage use explicit opening and closing of transaction and no longer rely on some internal reference counting details. So this weakref proxy is no longer necessary. Absolutely no test are affected when we drop it.

File last commit:

r44957:9db11679 default
r45788:5d0998cc default
Show More
revlog.h
17 lines | 392 B | text/x-c | CLexer
/*
revlog.h - efficient revlog parsing
This software may be used and distributed according to the terms of
the GNU General Public License, incorporated herein by reference.
*/
#ifndef _HG_REVLOG_H_
#define _HG_REVLOG_H_
#include <Python.h>
extern PyTypeObject HgRevlogIndex_Type;
#define HgRevlogIndex_Check(op) PyObject_TypeCheck(op, &HgRevlogIndex_Type)
#endif /* _HG_REVLOG_H_ */