Mercurial > public > mercurial-scm > hg
annotate mercurial/cext/revlog.h @ 44370:edaae3616ba3
bookmarks: avoid traceback when two pushes race to delete the same bookmark
`hg push -f -B remote-only-bookmark` can raise server-side in
`bookmarks._del` (specifically in `self._refmap.pop(mark)`), if the
remote-only bookmark got deleted concurrently.
Fix this by simply not deleting the non-existent bookmark in that
case.
For avoidance of doubt, refusing to delete a bookmark that doesn't
exist when the push starts is taking care of elsewhere; no change of
behavior there.
Differential Revision: https://phab.mercurial-scm.org/D8124
author | Valentin Gatien-Baron <valentin.gatienbaron@gmail.com> |
---|---|
date | Sat, 15 Feb 2020 14:51:33 -0500 |
parents | b12700dd261f |
children | 9db11679f8ac |
rev | line source |
---|---|
40859
aa76be85029b
revlog: export symbol of indexType
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
1 /* |
aa76be85029b
revlog: export symbol of indexType
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
2 revlog.h - efficient revlog parsing |
aa76be85029b
revlog: export symbol of indexType
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
3 |
aa76be85029b
revlog: export symbol of indexType
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
4 This software may be used and distributed according to the terms of |
aa76be85029b
revlog: export symbol of indexType
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
5 the GNU General Public License, incorporated herein by reference. |
aa76be85029b
revlog: export symbol of indexType
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
6 */ |
aa76be85029b
revlog: export symbol of indexType
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
7 |
aa76be85029b
revlog: export symbol of indexType
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
8 #ifndef _HG_REVLOG_H_ |
aa76be85029b
revlog: export symbol of indexType
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
9 #define _HG_REVLOG_H_ |
aa76be85029b
revlog: export symbol of indexType
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
10 |
aa76be85029b
revlog: export symbol of indexType
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
11 #include <Python.h> |
aa76be85029b
revlog: export symbol of indexType
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
12 |
40860
18a8def6e1b5
revlog: rename indexType to HgRevlogIndex_Type as it's a global symbol
Yuya Nishihara <yuya@tcha.org>
parents:
40859
diff
changeset
|
13 extern PyTypeObject HgRevlogIndex_Type; |
40859
aa76be85029b
revlog: export symbol of indexType
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
14 |
40861
b12700dd261f
revlog: add public CPython function to get parent revisions
Yuya Nishihara <yuya@tcha.org>
parents:
40860
diff
changeset
|
15 #define HgRevlogIndex_Check(op) PyObject_TypeCheck(op, &HgRevlogIndex_Type) |
b12700dd261f
revlog: add public CPython function to get parent revisions
Yuya Nishihara <yuya@tcha.org>
parents:
40860
diff
changeset
|
16 |
b12700dd261f
revlog: add public CPython function to get parent revisions
Yuya Nishihara <yuya@tcha.org>
parents:
40860
diff
changeset
|
17 int HgRevlogIndex_GetParents(PyObject *op, int rev, int *ps); |
b12700dd261f
revlog: add public CPython function to get parent revisions
Yuya Nishihara <yuya@tcha.org>
parents:
40860
diff
changeset
|
18 |
40859
aa76be85029b
revlog: export symbol of indexType
Yuya Nishihara <yuya@tcha.org>
parents:
diff
changeset
|
19 #endif /* _HG_REVLOG_H_ */ |