Code: Show/Hide mm->IsAttached("mymodule", arena); |
Dr Brain wrote: |
Memory is cheap. Don't fret over it. A few hundred bytes is a drop in an ocean. |
Code: Show/Hide typedef struct my_adata { ... } my_adata;
int MM_foo(...) { if (action == MM_LOAD) { adkey = aman->AllocateArenaData(sizeof(my_adata *)); } else if (action == MM_ATTACH) { my_adata **adp = P_ARENA_DATA(arena, adkey); *adp = amalloc(sizeof(**adp)); } else if (action = MM_DETACH) { my_adata **adp = P_ARENA_DATA(arena, adkey); afree(*adp); } ... } |