In plugging away at my area converter (antique uber-customized diku-gamma), I noticed something that strikes me as odd.
In the build.c file, the variables item_w_flags and w_flags are defined, and they are both initialized to the same values (which makes me think one of them is redundant... but that's another topic).
I noticed that they have pairs of entries for wear-slots with the same name, such as "neck" and "neck". That's all well and good, except that the get_wflag() routine does
for ( x = 0; x < (sizeof(w_flags) / sizeof(w_flags)); x++ )
if ( !str_cmp(flag, w_flags[x]) )
Wouldn't that mean that it's impossible to ever get the second wear slot of a given name back, and in turn, when generating an output string using flag_string() or ext_flag_string(), any items which should be wearable in either slot would become wearable in only the first one (since only that bit would get set -- twice) after OLC is used?
It seems like a bug to me... can anyone verify or dispute this?