@@ -10,9 +10,9 @@
#include "packfile.h"
#include "object-store.h"
-static struct bulk_checkin_state {
- unsigned plugged:1;
+static int bulk_checkin_plugged;
+static struct bulk_checkin_state {
char *pack_tmp_name;
struct hashfile *f;
off_t offset;
@@ -21,7 +21,7 @@ static struct bulk_checkin_state {
struct pack_idx_entry **written;
uint32_t alloc_written;
uint32_t nr_written;
-} state;
+} bulk_checkin_state;
static void finish_tmp_packfile(struct strbuf *basename,
const char *pack_tmp_name,
@@ -277,21 +277,23 @@ int index_bulk_checkin(struct object_id *oid,
int fd, size_t size, enum object_type type,
const char *path, unsigned flags)
{
- int status = deflate_to_pack(&state, oid, fd, size, type,
+ int status = deflate_to_pack(&bulk_checkin_state, oid, fd, size, type,
path, flags);
- if (!state.plugged)
- finish_bulk_checkin(&state);
+ if (!bulk_checkin_plugged)
+ finish_bulk_checkin(&bulk_checkin_state);
return status;
}
void plug_bulk_checkin(void)
{
- state.plugged = 1;
+ assert(!bulk_checkin_plugged);
+ bulk_checkin_plugged = 1;
}
void unplug_bulk_checkin(void)
{
- state.plugged = 0;
- if (state.f)
- finish_bulk_checkin(&state);
+ assert(bulk_checkin_plugged);
+ bulk_checkin_plugged = 0;
+ if (bulk_checkin_state.f)
+ finish_bulk_checkin(&bulk_checkin_state);
}