/*
* Empire - A multi-player, client/server Internet based war game.
- * Copyright (C) 1986-2005, Dave Pare, Jeff Bailey, Thomas Ruschak,
+ * Copyright (C) 1986-2009, Dave Pare, Jeff Bailey, Thomas Ruschak,
* Ken Stevens, Steve McClure
*
* This program is free software; you can redistribute it and/or modify
*
* ---
*
- * See the "LEGAL", "LICENSE", "CREDITS" and "README" files for all the
- * related information and legal notices. It is expected that any future
- * projects/authors will amend these files as needed.
+ * See files README, COPYING and CREDITS in the root of the source
+ * tree for related information and legal notices. It is expected
+ * that future projects/authors will amend these files as needed.
*
* ---
*
* stmtch.c: Matching operations on structures and commands
- *
+ *
* Known contributors to this file:
- *
+ * Markus Armbruster, 2004-2008
*/
-#include "misc.h"
+#include <config.h>
+
#include "match.h"
/*
- * Find NEEDLE in array HAYSTACK[], return its index.
+ * Find element named NEEDLE in array HAYSTACK[], return its index.
* Return M_NOTFOUND if there are no matches, M_NOTUNIQUE if there are
* several.
* Each array element has a pointer to its name stored at offset OFFS.
case ME_MISMATCH:
break;
case ME_PARTIAL:
- if (res >= 0)
- return M_NOTUNIQUE;
- res = i;
+ if (res == M_NOTFOUND)
+ res = i;
+ else
+ res = M_NOTUNIQUE;
break;
case ME_EXACT:
return i;