From e1238633ac9c7225e519802033502c2cae0c58d7 Mon Sep 17 00:00:00 2001 From: "Darryl L. Miles" Date: Fri, 31 Jan 2025 16:21:38 +0000 Subject: [PATCH] tiles: simplify TileStoreFree() and TileStoreFreeList_end management --- tiles/tile.c | 33 ++++++++++++--------------------- 1 file changed, 12 insertions(+), 21 deletions(-) diff --git a/tiles/tile.c b/tiles/tile.c index 17becd86..1fb69bc7 100644 --- a/tiles/tile.c +++ b/tiles/tile.c @@ -699,7 +699,10 @@ getTileFromTileStore(void) if (TileStoreFreeList) { _return_tile = TileStoreFreeList; - TileStoreFreeList = (Tile *)CD2PTR(TileStoreFreeList->ti_client); + Tile *nextfree = (Tile *)CD2PTR(TileStoreFreeList->ti_client); + TileStoreFreeList = nextfree; + if (!nextfree) + TileStoreFreeList_end = NULL; return _return_tile; } @@ -723,30 +726,20 @@ getTileFromTileStore(void) Tile * TiAlloc(void) { - Tile *newtile; - - newtile = getTileFromTileStore(); + Tile *newtile = getTileFromTileStore(); TiSetClient(newtile, CLIENTDEFAULT); TiSetBody(newtile, 0); - return (newtile); + return newtile; } static void TileStoreFree( Tile *ptr) { - if (!TileStoreFreeList_end || !TileStoreFreeList) - { - TileStoreFreeList_end = ptr; - ptr->ti_client = PTR2CD(NULL); - TileStoreFreeList = TileStoreFreeList_end; - } - else - { - TileStoreFreeList_end->ti_client = PTR2CD(ptr); - TileStoreFreeList_end = ptr; - TileStoreFreeList_end->ti_client = PTR2CD(NULL); - } + ptr->ti_client = PTR2CD(TileStoreFreeList); + if (!TileStoreFreeList_end) + TileStoreFreeList_end = ptr; + TileStoreFreeList = ptr; } void @@ -774,12 +767,10 @@ TiFree( Tile * TiAlloc(void) { - Tile *newtile; - - newtile = (Tile *) mallocMagic((unsigned) (sizeof (Tile))); + Tile *newtile = (Tile *) mallocMagic(sizeof(Tile)); TiSetClient(newtile, CLIENTDEFAULT); TiSetBody(newtile, 0); - return (newtile); + return newtile; } /*