]> git.pond.sub.org Git - empserver/commitdiff
set: Use the first unused lot instead of the last
authorMarkus Armbruster <armbru@pond.sub.org>
Thu, 10 May 2018 08:16:10 +0000 (10:16 +0200)
committerMarkus Armbruster <armbru@pond.sub.org>
Tue, 5 Jan 2021 06:25:18 +0000 (07:25 +0100)
Signed-off-by: Markus Armbruster <armbru@pond.sub.org>
src/lib/commands/set.c

index 751f2f81a2e8524447fb78d962f9990768adccd1..22547049f3f0f0cd10b464edb6bc78062f9c032d 100644 (file)
@@ -30,6 +30,7 @@
  *     Dave Pare, 1986
  *     Pat Loney, 1992
  *     Steve McClure, 1996
+ *     Markus Armbruster, 2004-2018
  */
 
 #include <config.h>
@@ -101,8 +102,10 @@ set(void)
        freeslot = -1;
        snxtitem_all(&ni_trade, EF_TRADE);
        while (nxtitem(&ni_trade, &trade)) {
-           if (trade.trd_owner == 0)
-               freeslot = ni_trade.cur;
+           if (!trade.trd_owner) {
+               if (freeslot < 0)
+                   freeslot = ni_trade.cur;
+           }
            if (trade.trd_unitid == ni.cur && trade.trd_type == type) {
                foundslot = ni_trade.cur;
                break;