]> git.pond.sub.org Git - empserver/commit - src/lib/commands/fina.c
Fix extra prompt after abort due to misuse of snxtitem()
authorMarkus Armbruster <armbru@pond.sub.org>
Sun, 27 Jul 2008 01:35:00 +0000 (21:35 -0400)
committerMarkus Armbruster <armbru@pond.sub.org>
Sun, 27 Jul 2008 01:36:37 +0000 (21:36 -0400)
commit3cc8de8aefc190ca70a52bf072ea5d0936615841
tree4c34c4b4b1a5bd72702afb2e5a9b273de47aea4d
parent9f4ce71a54db61a899a9918a277178476491458b
Fix extra prompt after abort due to misuse of snxtitem()

The old code used getstarg() to get an argument with a different
prompt than snxtitem() uses, then passed the value to snxtitem()
unchecked.  If the player aborts, getstarg() returns a null pointer,
and snxtitem() prompts again.  Affected:

* load/lload plane/land third argument; load_plane_ship(),
  load_land_ship(), load_plane_land(), load_land_land()

* bomb, drop, fly, paradrop, recon and sweep second argument;
  get_planes()

* tend and ltend second and fourth argument; ltend(), tend(),
  tend_land()

* mission second argument; mission()

Fix by making snxtitem() taking a prompt argument, null pointer
requests the old prompt.

Use that to simplify multifire() and torp().  Change the other callers
to pass NULL.
67 files changed:
include/prototypes.h
src/lib/commands/arm.c
src/lib/commands/army.c
src/lib/commands/carg.c
src/lib/commands/cede.c
src/lib/commands/coun.c
src/lib/commands/decl.c
src/lib/commands/fina.c
src/lib/commands/flee.c
src/lib/commands/foll.c
src/lib/commands/fort.c
src/lib/commands/hard.c
src/lib/commands/land.c
src/lib/commands/laun.c
src/lib/commands/ldump.c
src/lib/commands/ledg.c
src/lib/commands/load.c
src/lib/commands/look.c
src/lib/commands/lost.c
src/lib/commands/lstat.c
src/lib/commands/lten.c
src/lib/commands/marc.c
src/lib/commands/mfir.c
src/lib/commands/mine.c
src/lib/commands/miss.c
src/lib/commands/mobq.c
src/lib/commands/mora.c
src/lib/commands/name.c
src/lib/commands/navi.c
src/lib/commands/ndump.c
src/lib/commands/news.c
src/lib/commands/nuke.c
src/lib/commands/orde.c
src/lib/commands/payo.c
src/lib/commands/pboa.c
src/lib/commands/pdump.c
src/lib/commands/plan.c
src/lib/commands/powe.c
src/lib/commands/pstat.c
src/lib/commands/rada.c
src/lib/commands/rang.c
src/lib/commands/reje.c
src/lib/commands/repo.c
src/lib/commands/retr.c
src/lib/commands/sabo.c
src/lib/commands/sail.c
src/lib/commands/scra.c
src/lib/commands/scut.c
src/lib/commands/sdump.c
src/lib/commands/set.c
src/lib/commands/shi.c
src/lib/commands/sona.c
src/lib/commands/sstat.c
src/lib/commands/stop.c
src/lib/commands/strv.c
src/lib/commands/supp.c
src/lib/commands/tend.c
src/lib/commands/torp.c
src/lib/commands/tran.c
src/lib/commands/trea.c
src/lib/commands/upgr.c
src/lib/commands/wing.c
src/lib/commands/work.c
src/lib/commands/xdump.c
src/lib/subs/plnsub.c
src/lib/subs/satmap.c
src/lib/subs/snxtitem.c