Lines Matching refs:info
61 // Grab the next info from the array.
63 AtExitInfo* info = &fInfos[fFirstUnused++];
64 info->block = this;
65 return info;
72 void FreeInfo(AtExitInfo* info)
74 fFreeList.Add(info);
93 inline bool operator()(const AtExitInfo* info) const
95 return info->dsoHandle == fDSOHandle;
111 inline bool operator()(const AtExitInfo* info) const
113 addr_t address = (addr_t)info->hook;
114 return info->dsoHandle == NULL && address >= fStart && address <= fEnd;
153 AtExitInfo* info = sAtExitInfoStack.Head();
154 while (info != NULL) {
155 AtExitInfo* nextInfo = sAtExitInfoStack.GetNext(info);
157 if (predicate(info)) {
158 // remove info from stack
159 sAtExitInfoStack.Remove(previousInfo, info);
162 info->hook(info->data);
164 // return the info to the block
165 if (info->block->IsEmpty())
166 sAtExitInfoBlocks.Add(info->block);
168 info->block->FreeInfo(info);
170 previousInfo = info;
172 info = nextInfo;
199 // We need to allocate an info. Get an info block from which to allocate.
218 // allocate the info
219 AtExitInfo* info = block->AllocateInfo();
225 // init and add the info
226 info->hook = hook;
227 info->data = data;
228 info->dsoHandle = dsoHandle;
230 sAtExitInfoStack.Add(info);
254 while (AtExitInfo* info = sAtExitInfoStack.RemoveHead()) {
256 info->hook(info->data);
258 // return the info to the block
259 if (info->block->IsEmpty())
260 sAtExitInfoBlocks.Add(info->block);
262 info->block->FreeInfo(info);