# HG changeset patch # User Jun Wu <qu...@fb.com> # Date 1494290762 25200 # Mon May 08 17:46:02 2017 -0700 # Node ID b9a58a643dcc103d122e02c66a4545820fa60807 # Parent ad8cf58a8ba5bf96e6020eb88560c283eb7463c6 # Available At https://bitbucket.org/quark-zju/hg-draft # hg pull https://bitbucket.org/quark-zju/hg-draft -r b9a58a643dcc parsers: use PYMODULEINIT
diff --git a/mercurial/parsers.c b/mercurial/parsers.c --- a/mercurial/parsers.c +++ b/mercurial/parsers.c @@ -2855,5 +2855,5 @@ void dirs_module_init(PyObject *mod); void manifest_module_init(PyObject *mod); -static void module_init(PyObject *mod) +static int module_init(PyObject *mod) { /* This module constant has two purposes. First, it lets us unit test @@ -2873,5 +2873,5 @@ static void module_init(PyObject *mod) if (PyType_Ready(&indexType) < 0 || PyType_Ready(&dirstateTupleType) < 0) - return; + return -1; Py_INCREF(&indexType); PyModule_AddObject(mod, "index", (PyObject *)&indexType); @@ -2884,4 +2884,5 @@ static void module_init(PyObject *mod) if (nullentry) PyObject_GC_UnTrack(nullentry); + return 0; } @@ -2912,32 +2913,4 @@ static int check_python_version(void) } -#ifdef IS_PY3K -static struct PyModuleDef parsers_module = { - PyModuleDef_HEAD_INIT, - "parsers", - parsers_doc, - -1, - methods -}; - -PyMODINIT_FUNC PyInit_parsers(void) -{ - PyObject *mod; - - if (check_python_version() == -1) - return NULL; - mod = PyModule_Create(&parsers_module); - module_init(mod); - return mod; -} -#else -PyMODINIT_FUNC initparsers(void) -{ - PyObject *mod; - - if (check_python_version() == -1) - return; - mod = Py_InitModule3("parsers", methods, parsers_doc); - module_init(mod); -} -#endif +PYMODULEINIT(parsers, methods, parsers_doc, 1, check_python_version, + module_init); _______________________________________________ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel