Mercurial > hg > early-roguelike
view rogue5/score.h @ 298:5a94c9b3181e
UltraRogue: clear the next_obj field when removing items from the floor.
The next_obj field is a pointer which the top item in a stack uses to
keep a list of the other items. When removing an item from the stack,
rem_obj() failed to set next_obj to NULL, which can cause items in
monster inventory to point to items earlier in the inventory list.
That causes infinite co-recursion when saving or restoring.
author | John "Elwin" Edwards |
---|---|
date | Thu, 08 Feb 2018 20:54:34 -0500 |
parents | f502bf60e6e4 |
children |
line wrap: on
line source
/* * Score file structure * * @(#)score.h 4.6 (Berkeley) 02/05/99 * * Rogue: Exploring the Dungeons of Doom * Copyright (C) 1980-1983, 1985, 1999 Michael Toy, Ken Arnold and Glenn Wichman * All rights reserved. * * See the file LICENSE.TXT for full copyright and licensing information. */ struct sc_ent { uid_t sc_uid; int sc_score; unsigned int sc_flags; int sc_monster; char sc_name[MAXSTR]; int sc_level; unsigned int sc_time; }; typedef struct sc_ent SCORE; void rd_score(SCORE *top_ten); void wr_score(SCORE *top_ten);