Trivial refactor: move code. View with diff -b

parent 53bd2680
......@@ -1784,6 +1784,45 @@ sfe_objnew(struct sfe_resurrect_priv *sfer, struct worker *wrk,
return (oc);
}
static int
sfe_resurrect_ban(struct sfe_resurrect_priv *sfer, const struct fellow_dle *e)
{
struct sfe_ban_t ban_t;
assert(DLE_TYPE(e->type) == DLE_T_BAN_REG ||
DLE_TYPE(e->type) == DLE_T_BAN_IMM);
sfer->has_bans = 1;
switch (DLE_TYPE(e->type)) {
case DLE_T_BAN_REG:
ban_t = sfe_ban_reg(sfer, e);
break;
case DLE_T_BAN_IMM:
ban_t = sfe_ban_imm(sfer, e);
break;
default:
WRONG("dle type for ban resurrect");
}
AN(ban_t.earliest);
AN(ban_t.latest);
switch (DLE_OP(e->type)) {
case DLE_OP_ADD:
// single ban
festash_work_one(sfer->fet, ban_t.latest);
break;
case DLE_OP_CHG:
// ban export
AZ(sfer->ban_exp_t.earliest);
AZ(sfer->ban_exp_t.latest);
sfer->ban_exp_t = ban_t;
festash_top_work(sfer->fet, sfer->has_bans);
break;
default:
WRONG("dle op for ban resurrect");
}
//fprintf(stdout, "loaded ban %f\n", ban_t);
return (0);
}
/*
* create vampire objects for objects in storage
......@@ -1794,7 +1833,6 @@ static int
sfe_resurrect(void *priv, const struct fellow_dle *e)
{
struct sfe_resurrect_priv *sfer;
struct sfe_ban_t ban_t;
struct objcore *oc;
struct ban *ban;
vtim_real t;
......@@ -1809,38 +1847,8 @@ sfe_resurrect(void *priv, const struct fellow_dle *e)
}
if (DLE_TYPE(e->type) == DLE_T_BAN_REG ||
DLE_TYPE(e->type) == DLE_T_BAN_IMM) {
sfer->has_bans = 1;
switch (DLE_TYPE(e->type)) {
case DLE_T_BAN_REG:
ban_t = sfe_ban_reg(sfer, e);
break;
case DLE_T_BAN_IMM:
ban_t = sfe_ban_imm(sfer, e);
break;
default:
WRONG("dle type for ban resurrect");
}
AN(ban_t.earliest);
AN(ban_t.latest);
switch (DLE_OP(e->type)) {
case DLE_OP_ADD:
// single ban
festash_work_one(sfer->fet, ban_t.latest);
break;
case DLE_OP_CHG:
// ban export
AZ(sfer->ban_exp_t.earliest);
AZ(sfer->ban_exp_t.latest);
sfer->ban_exp_t = ban_t;
festash_top_work(sfer->fet, sfer->has_bans);
break;
default:
WRONG("dle op for ban resurrect");
}
//fprintf(stdout, "loaded ban %f\n", ban_t);
return (0);
}
DLE_TYPE(e->type) == DLE_T_BAN_IMM)
return (sfe_resurrect_ban(sfer, e));
if (! sfe_check(sfer, e))
return (0);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment