##// END OF EJS Templates
phases: move short-lived PyObject pointers to local scope...
Yuya Nishihara -
r45740:a6fde9d7 default
parent child Browse files
Show More
@@ -791,10 +791,7 b' static PyObject *compute_phases_map_sets'
791 791 96: internal */
792 792 static const char trackedphases[] = {1, 2, 32, 96};
793 793 PyObject *roots = Py_None;
794 PyObject *pyphase = NULL;
795 PyObject *pyrev = NULL;
796 794 PyObject *phasesetsdict = NULL;
797 PyObject *phaseroots = NULL;
798 795 PyObject *phasesets[4] = {NULL, NULL, NULL, NULL};
799 796 Py_ssize_t len = index_length(self);
800 797 char *phases = NULL;
@@ -815,7 +812,8 b' static PyObject *compute_phases_map_sets'
815 812 }
816 813
817 814 for (i = 0; i < numphases; ++i) {
818 pyphase = PyInt_FromLong(trackedphases[i]);
815 PyObject *pyphase = PyInt_FromLong(trackedphases[i]);
816 PyObject *phaseroots = NULL;
819 817 if (pyphase == NULL)
820 818 goto release;
821 819 phaseroots = PyDict_GetItem(roots, pyphase);
@@ -824,7 +822,6 b' static PyObject *compute_phases_map_sets'
824 822 continue;
825 823 rev = add_roots_get_min(self, phaseroots, phases,
826 824 trackedphases[i]);
827 phaseroots = NULL;
828 825 if (rev == -2)
829 826 goto release;
830 827 if (rev != -1 && (minphaserev == -1 || rev < minphaserev))
@@ -840,6 +837,8 b' static PyObject *compute_phases_map_sets'
840 837 if (minphaserev == -1)
841 838 minphaserev = len;
842 839 for (rev = minphaserev; rev < len; ++rev) {
840 PyObject *pyphase = NULL;
841 PyObject *pyrev = NULL;
843 842 int parents[2];
844 843 /*
845 844 * The parent lookup could be skipped for phaseroots, but
@@ -886,7 +885,7 b' static PyObject *compute_phases_map_sets'
886 885 if (phasesetsdict == NULL)
887 886 goto release;
888 887 for (i = 0; i < numphases; ++i) {
889 pyphase = PyInt_FromLong(trackedphases[i]);
888 PyObject *pyphase = PyInt_FromLong(trackedphases[i]);
890 889 if (pyphase == NULL)
891 890 goto release;
892 891 if (PyDict_SetItem(phasesetsdict, pyphase, phasesets[i]) ==
General Comments 0
You need to be logged in to leave comments. Login now