diff --git a/src/market.c b/src/market.c index a4158e48d..68ef9767c 100644 --- a/src/market.c +++ b/src/market.c @@ -96,8 +96,8 @@ void do_markets(void) const struct race *rc = f ? f->race : NULL; int p = rpeasants(r); int numlux = rc_luxury_trade(rc), numherbs = rc_herb_trade(rc); - numlux = (p + numlux - MIN_PEASANTS) / numlux; - numherbs = (p + numherbs - MIN_PEASANTS) / numherbs; + if (numlux>0) numlux = (p + numlux - MIN_PEASANTS) / numlux; + if (numherbs>0) numherbs = (p + numherbs - MIN_PEASANTS) / numherbs; if (numlux > 0 || numherbs > 0) { int d, nmarkets = 0; const item_type *lux = r_luxury(r); diff --git a/src/reports.c b/src/reports.c index 27f3a5c28..ca1cfb0f3 100644 --- a/src/reports.c +++ b/src/reports.c @@ -1541,8 +1541,8 @@ static void prepare_report(struct report_context *ctx, faction *f) } static void mkreportdir(const char *rpath) { - if (_access(rpath, 0) < 0) { - if (_mkdir(rpath) != 0) { + if (_mkdir(rpath) != 0) { + if (_access(rpath, 0) < 0) { log_error("could not create reports directory %s: %s", rpath, strerror(errno)); abort(); }