mirror of
https://github.com/drasko/codezero.git
synced 2026-01-13 19:33:15 +01:00
- Fixed an important bug with shadow object handling. When a shadow is dropped, if there are references left to it, both the object in front and dropped object becomes a shadow of the original object underneath. We had thought of this case but had not increase the shadow count. - Added a test mechanism that tests the number of objects, vmfiles, shadows etc. by first counting them and trying to reach the same number by other means, i.e. per-object-shadow counts. It discovered a plethora of bugs. - Added new set of functions to register objects, files and tasks globally with the pager, these functions introduce a refcount as well as adding structures to linked lists. - fork/exit now seems to work stably i.e. no negative shadow counts etc.
14 lines
262 B
C
14 lines
262 B
C
#ifndef __GLOBALS_H__
|
|
#define __GLOBALS_H__
|
|
|
|
struct global_list {
|
|
int total;
|
|
struct list_head list;
|
|
};
|
|
|
|
extern struct global_list global_vm_files;
|
|
extern struct global_list global_vm_objects;
|
|
extern struct global_list global_tasks;
|
|
|
|
#endif /* __GLOBALS_H__ */
|