Procházet zdrojové kódy

Fix a refcount bug in the entity dictionary.

legacy
Sam Hocevar sam před 14 roky
rodič
revize
be70a70eaa
1 změnil soubory, kde provedl 10 přidání a 1 odebrání
  1. +10
    -1
      src/dict.cpp

+ 10
- 1
src/dict.cpp Zobrazit soubor

@@ -40,8 +40,10 @@ public:

~DictData()
{
#if !FINAL_RELEASE
if (nentities)
fprintf(stderr, "ERROR: still %i entities in dict\n", nentities);
#endif
free(entities);
}

@@ -103,8 +105,15 @@ int Dict::MakeSlot(char const *name)
void Dict::RemoveSlot(int id)
{
if (Ticker::Unref(data->entities[id]) == 0)
{
data->entities[id] = NULL;
data->nentities--;
if (data->nentities)
data->nentities--;
#if !FINAL_RELEASE
else
fprintf(stderr, "ERROR: removing entity from empty dict\n");
#endif
}
}




Načítá se…
Zrušit
Uložit