mirror of
https://github.com/RTimothyEdwards/magic.git
synced 2026-10-06 09:53:00 +02:00
tiles: simplify TileStoreFree() and TileStoreFreeList_end management
This commit is contained in:
committed by
R. Timothy Edwards
parent
b9dd4bfb7c
commit
e1238633ac
+12
-21
@@ -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;
|
||||
}
|
||||
|
||||
/*
|
||||
|
||||
Reference in New Issue
Block a user