Mercurial > hg
diff mercurial/cext/parsers.c @ 47990:0d2a404f1932
dirstate: introduce a set_tracked method on "map" and "item"
This move more implementation details withing the DirstateItem itself, which is
what we have been doing for a while.
Differential Revision: https://phab.mercurial-scm.org/D11430
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Wed, 15 Sep 2021 18:05:39 +0200 |
parents | 2018753014be |
children | 631f6b445a77 |
line wrap: on
line diff
--- a/mercurial/cext/parsers.c Wed Sep 15 11:13:46 2021 +0200 +++ b/mercurial/cext/parsers.c Wed Sep 15 18:05:39 2021 +0200 @@ -507,6 +507,17 @@ Py_RETURN_NONE; } +static PyObject *dirstate_item_set_tracked(dirstateItemObject *self) +{ + self->flags |= dirstate_flag_wc_tracked; + self->flags |= dirstate_flag_possibly_dirty; + /* size = None on the python size turn into size = NON_NORMAL when + * accessed. So the next line is currently required, but a some future + * clean up would be welcome. */ + self->size = dirstate_v1_nonnormal; + Py_RETURN_NONE; +} + static PyObject *dirstate_item_set_untracked(dirstateItemObject *self) { self->flags &= ~dirstate_flag_wc_tracked; @@ -548,6 +559,8 @@ METH_NOARGS, "mark a file as \"possibly dirty\""}, {"set_clean", (PyCFunction)dirstate_item_set_clean, METH_VARARGS, "mark a file as \"clean\""}, + {"set_tracked", (PyCFunction)dirstate_item_set_tracked, METH_NOARGS, + "mark a file as \"tracked\""}, {"set_untracked", (PyCFunction)dirstate_item_set_untracked, METH_NOARGS, "mark a file as \"untracked\""}, {NULL} /* Sentinel */