clean up struct ref's nonfastforward field
commite339aa92ae2db194a3d5738cb3aee6d8b3bf7b10
authorJeff King <peff@peff.net>
Mon, 26 Mar 2012 19:51:50 +0000 (26 15:51 -0400)
committerJunio C Hamano <gitster@pobox.com>
Mon, 26 Mar 2012 19:59:04 +0000 (26 12:59 -0700)
treecf5dd2ce2f41d750747c7539787e79af43cc50c8
parentf25950f3475e263ed6c8f0797bb058ba6444f85e
clean up struct ref's nonfastforward field

Each ref structure contains a "nonfastforward" field which
is set during push to show whether the ref rewound history.
Originally this was a single bit, but it was changed in
f25950f (push: Provide situational hints for non-fast-forward
errors) to an enum differentiating a non-ff of the current
branch versus another branch.

However, we never actually set the member according to the
enum values, nor did we ever read it expecting anything but
a boolean value. But we did use the side effect of declaring
the enum constants to store those values in a totally
different integer variable. The code as-is isn't buggy, but
the enum declaration inside "struct ref" is somewhat
misleading.

Let's convert nonfastforward back into a single bit, and
then define the NON_FF_* constants closer to where they
would be used (they are returned via the "int *nonfastforward"
parameter to transport_push, so we can define them there).

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
cache.h
transport.h