From f75544ee70eccb9d9b369a5d6d803e453f32d8a2 Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Sun, 1 Jul 2012 12:13:36 +0200 Subject: [PATCH] Replace trade_check_item_ok() by check_obj_ok() Relaxes the sanity check of the argument's ef_type. Could be avoided, but not worth the bother. --- include/trade.h | 1 - src/lib/commands/set.c | 2 +- src/lib/subs/trdsub.c | 18 +----------------- 3 files changed, 2 insertions(+), 19 deletions(-) diff --git a/include/trade.h b/include/trade.h index d34f71ba3..15b8c32a3 100644 --- a/include/trade.h +++ b/include/trade.h @@ -58,7 +58,6 @@ struct trdstr { }; extern int trade_check_ok(struct trdstr *, union empobj_storage *); -extern int trade_check_item_ok(union empobj_storage *); extern char *trade_nameof(struct trdstr *, union empobj_storage *); extern int trade_desc(struct trdstr *, union empobj_storage *); extern int trade_getitem(struct trdstr *, union empobj_storage *); diff --git a/src/lib/commands/set.c b/src/lib/commands/set.c index 8a6537902..6cea604a2 100644 --- a/src/lib/commands/set.c +++ b/src/lib/commands/set.c @@ -93,7 +93,7 @@ set(void) trade_nameof(&trade, &item), ni.cur); if (!(p = getstarg(player->argp[3], prompt, buf))) return RET_FAIL; - if (!trade_check_item_ok(&item)) + if (!check_obj_ok(&item.gen)) return RET_FAIL; if ((price = atoi(p)) < 0) continue; diff --git a/src/lib/subs/trdsub.c b/src/lib/subs/trdsub.c index 36633a33b..590c48981 100644 --- a/src/lib/subs/trdsub.c +++ b/src/lib/subs/trdsub.c @@ -53,23 +53,7 @@ int trade_check_ok(struct trdstr *tp, union empobj_storage *tgp) { - return check_trade_ok(tp) && trade_check_item_ok(tgp); -} - -int -trade_check_item_ok(union empobj_storage *tgp) -{ - if (tgp->gen.ef_type == EF_LAND) - return check_land_ok(&tgp->land); - if (tgp->gen.ef_type == EF_PLANE) - return check_plane_ok(&tgp->plane); - if (tgp->gen.ef_type == EF_SHIP) - return check_ship_ok(&tgp->ship); - if (tgp->gen.ef_type == EF_NUKE) - return check_nuke_ok(&tgp->nuke); - CANT_REACH(); - pr("Trade lot went bad!\n"); - return 0; + return check_trade_ok(tp) && check_obj_ok(&tgp->gen); } char * -- 2.43.0