add nobug resource tracking to filedescriptors
This commit is contained in:
parent
5286838886
commit
bb98bb434b
2 changed files with 11 additions and 0 deletions
|
|
@ -214,6 +214,9 @@ lumiera_filedescriptor_new (LumieraFiledescriptor template)
|
|||
lumiera_mutex_init (&self->lock);
|
||||
self->reopened = 0;
|
||||
self->refcount = 1;
|
||||
self->handle = 0;
|
||||
|
||||
RESOURCE_ANNOUNCE (filedescriptor, "mutex", "filedescriptor", self, self->rh);
|
||||
|
||||
return self;
|
||||
}
|
||||
|
|
@ -231,10 +234,15 @@ lumiera_filedescriptor_delete (LumieraFiledescriptor self)
|
|||
|
||||
REQUIRE (self->refcount == 0);
|
||||
|
||||
RESOURCE_FORGET (filedescriptor, self->rh);
|
||||
|
||||
cuckoo_remove (registry, cuckoo_find (registry, &self));
|
||||
|
||||
TODO ("destruct other members (WIP)");
|
||||
|
||||
|
||||
TODO ("release filehandle");
|
||||
|
||||
lumiera_mutex_destroy (&self->lock);
|
||||
free (self);
|
||||
|
||||
|
|
|
|||
|
|
@ -45,8 +45,11 @@ struct lumiera_filedescriptor_struct
|
|||
unsigned reopened; /* count for reopens 0=not yet opened, 1=first, 2..=reopened */
|
||||
unsigned refcount; /* reference counter, all users sans registry */
|
||||
|
||||
LumieraFilehandle handle;
|
||||
//LumieraFileMap mappings;
|
||||
//LumieraWriteBuffer writebuffer;
|
||||
|
||||
RESOURCE_HANDLE (rh);
|
||||
};
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue