[net.games.rogue] bug in Rogue 5.3 --Spoiler

grw (04/11/83)

	If you read two vorpalize weapon scrolls in 5.3, your weapon
    vanishes in a puff of smoke.  However, the code for this removes
    the weapon from the list before it prints out the message, so
    the weapon it says you lose is not the one you lose.  Those who
    have sources may fix them by changing scrolls.c:

    /* old (wrong) way: */
    {
	detach(pack, cur_weapon);
	discard(cur_weapon);
	cur_weapon = NULL;
	msg("your %s vanishes in a puff of smoke",
	    w_names[cur_weapon->o_which]);
    }

    /* new (right) way: */
    {
	msg("your %s vanishes in a puff of smoke",
	    w_names[cur_weapon->o_which]);
	detach(pack, cur_weapon);
	discard(cur_weapon);
	cur_weapon = NULL;
    }

	Even Ken & Michael can make mistakes!

							-Glenn

hansen (04/13/83)

Whooaaaa, did I miss something on the net? Did I hear right? When did
Version 5.3 of rogue appear on the scenes? And someone (other than Ken
Arnold himself) has the source (!) for it? My goodness! Can I get the source
too? I'd like to put it up on our System V machine (and there's NO WAY that
a 4.xbsd binary is going to help to do that). PLEASE send replies (and/or
source) to me. Thank you!

					Tony Hansen
					...!pegasus!hansen