37{
38#ifndef OM_NDEBUG
42 int missed = 0, alloc;
44
45 printf("omtTestErrors: Start\n");
48 {
52 memset(&spec, 0,
sizeof(
struct LongSpec));
54 alloc = 0;
56 {
58 {
62 {
66 bin->last_page =
NULL;
68 bin->last_page = last_page;
69 }
70 else printf("cell not found\n");
71 break;
72 }
73
75 {
77 break;
78 }
79
81 {
83 break;
84 }
85
87 {
88 spec.MinSize = 8;
90 spec.NoTrack = 1;
93 {
95 }
96 else printf("cell not found\n");
97 break;
98 }
99
101 {
102 spec.MinSize = 8;
103 spec.MinTrack = 3;
106 {
108 }
109 else printf("cell not found\n");
110 break;
111 }
112
114 {
118 {
121 {
123 spec.MaxSize = 0;
124 spec.MinTrack = 3;
125 spec.NotIsBin = 1;
126 spec.MinSize = 2;
129 {
132 {
135 spec.MinTrack = 0;
136 spec.NotIsBin = 0;
140 else printf("cell not found");
141 }
142 }
143 else printf("cell not found\n");
144 }
145 }
146 else printf("cell not found\n");
147 break;
148 }
149
151 {
152#if KEEP_LEVEL > 0
155 {
156 addr = *((void**) addr);
157 }
159 {
162 {
166 {
167 addr = *((void**) addr);
168 }
170 {
173 }
174 }
175 }
177 {
178 printf("addr not found\n");
179 break;
180 }
182 break;
183#endif
184 spec.MinTrack = 5;
185 spec.NotIsBin = 1;
188 {
191 alloc = 1;
193 }
194 else printf("cell not found\n");
195 break;
196 }
197
199 {
201 spec.NoTrack = 1;
204 {
211 page->region = region;
212 }
213 else printf("cell not found\n");
214 break;
215 }
216
218 {
219 spec.MaxSize = 32;
220 spec.NoTrack = 1;
223 {
225 }
226 else printf("cell not found\n");
227 break;
228 }
229
231 {
235 {
237 }
238 else printf("cell not found\n");
239 break;
240 }
241
243 {
244 spec.NotIsBin = 1;
248 {
250 }
251 else printf("cell not found");
252 break;
253 }
254
256 {
259 {
261 }
262 else printf("cell not found\n");
263 break;
264 }
265
267 {
271 break;
272 }
273
275 {
278 {
282 } else printf("last == NULL\n");
283 break;
284 }
285
287 {
289 {
294 } else printf("om_SpecBin->next == NULL\n");
295 break;
296 }
297
299 {
301 {
308 }
309 else printf("om_KeptAddr == NULL\n");
310 break;
311 }
312
314 {
316 {
317 spec.MinTrack=3;
318 spec.NotIsBin = 1;
321 {
322 void* value;
324 value = *((void**) cell->addr);
325 *((void**) cell->addr) = value -1;
327 *((void**) cell->addr) = value;
328 alloc = 1;
330 }
331 else printf("cell not found\n");
332 }
333 else printf("om_Opts.Keep == 0");
334 break;
335 }
336
338 {
339 spec.MinTrack = 3;
340 spec.NotIsBin = 1;
343 {
345 void* value = *((void**) addr);
346 *((void**) addr) = value -1;
348 *((void**) addr) = value;
349 }
350 else printf("cell not found\n");
351 break;
352 }
353
355 {
356 spec.MinTrack=3;
359 {
360 void* addr = cell->addr - SIZEOF_VOIDP;
361 void* value = *((void**) addr);
362 *((void**) addr) = value -1;
364 *((void**) addr) = value;
365 }
366 else printf("cell not found\n");
367 break;
368 }
369
371 {
372
373#if 0
377 {
378 char* addr = (char*) cell->addr;
385 }
386 else printf("cell not found\n");
387 break;
388#endif
390 break;
391 }
392
394 {
396 break;
397 }
398
399 default:
400 printf("No Error test implemented\n");
401 }
402
404 {
406 missed++;
407 }
408 else
409 {
411 }
412
415 {
418 }
419 else
420 {
422 }
424 {
425 printf("omtTest panik: memory corrupted\n\n");
426 return -1;
427 }
428 printf("\n");
429 }
430 printf("omtTestErrors: Summary: missed = %d\n\n", missed);
432 return missed;
433#else
434 return 0;
435#endif
436}
const CanonicalForm int s
#define omDebugBinAddrSize(addr, size)
#define omDebugAddr(addr)
#define omDebugBinAddr(addr)
#define omRealloc(addr, size)
#define omDebugAddrSize(addr, size)
#define omDebugAddrBin(addr, bin)
#define omGetTopBinOfAddr(addr)
size_t omSizeOfAddr(const void *addr)
#define omGetBinPageOfAddr(addr)
void * om_AlwaysKeptAddrs
void * omAddr_2_OutAddr(void *addr)
#define omIsTrackAddr(addr)
const char * omError2Serror(omError_t error)
omError_t om_InternalErrorStatus
@ omError_MemoryCorrupted
@ omError_FreedAddrOrMemoryCorrupted
@ omError_SortedListError
@ omError_KeptAddrListCorrupted
@ omError_InvalidRangeAddr
@ omError_FalseAddrOrMemoryCorrupted
#define omCheckSortedList(ptr, what, level, report, OM_FLR_VAL)
#define omCheckList(ptr, level, report, OM_FLR_VAL)
omBinPageRegion_t * omBinPageRegion
#define OM_MAX_BLOCK_SIZE
omMemCell omFindCell(struct LongSpec spec)
void TestAlloc(omMemCell cell, unsigned long spec)
void omtTestDebug(omMemCell cell)
void InitCellAddrContent(omMemCell cell)
#define omMergeStickyBinIntoBin(A, B)