201{
202#ifndef __OPTIMIZE__
204
208 {
210 {
212 {
214 break;
215 }
216 }
218 }
219#ifdef OM_TRACK_RETURN
222#endif
223#ifndef OM_INTERNAL_DEBUG
225 {
226#ifdef OM_TRACK_RETURN
229#endif
230#ifdef OM_TRACK_FILE_LINE
233#endif
234
235
236#if defined(OM_TRACK_RETURN) && defined(OM_TRACK_FILE_LINE)
237 if (r !=
NULL &&
info[0].addr == r &&
l > 0 &&
f != 0)
238 {
239 strcpy(
info[0].file,
f);
241 }
242#endif
243 }
245 {
246#endif
247
248#ifdef OM_TRACK_FILE_LINE
249 fprintf(
fd,
" %s:%d",
f,
l);
250#endif
251#ifdef OM_TRACK_RETURN
252 fprintf(
fd,
" ra=%p", r);
253#endif
254
255#ifndef OM_INTERNAL_DEBUG
256 return 1;
257 }
258 else
259#endif
260#ifdef OM_PRINT_RETURN_ADDRESS
262#else
264#endif
265#else
266 return 0;
267#endif
268}
int omPrintRetInfo(omRetInfo info, int max, FILE *fd, const char *fmt)
int omBackTrace_2_RetInfo(void **bt, omRetInfo info, int max)
#define OM_MAX_BACKTRACE_DEPTH
#define omFilterRetInfo(info, max, cond)