MCPcopy Create free account
hub / github.com/Singular/Singular / _omDebugMemDup

Function _omDebugMemDup

omalloc/omDebug.c:201–229  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

199}
200
201void* _omDebugMemDup(void* addr, omTrackFlags_t flags, OM_CTFL_DECL)
202{
203 void* ret;
204 size_t sizeW;
205 OM_R_DEF;
206
207 check = MAX(check, om_Opts.MinCheck);
208 track = MAX(track, om_Opts.MinTrack);
209 check = MIN(check, om_Opts.MaxCheck);
210 track = MIN(track, om_Opts.MaxTrack);
211
212 if (check & _omCheckAddr(addr, 0, OM_FUSED, check, omError_NoError, OM_FLR_VAL))
213 {
214 return NULL;
215 }
216 else
217 {
218 sizeW = omSizeWOfAddr(addr);
219 }
220
221 ret = __omDebugAlloc((void*) (sizeW << LOG_SIZEOF_LONG), OM_FSIZE | flags, track, OM_FLR_VAL);
222 omMemcpyW(ret, addr, sizeW);
223
224#ifdef OM_INTERNAL_DEBUG
225 (void) _omCheckAddr(ret, (void*) (sizeW << LOG_SIZEOF_LONG),OM_FUSED|OM_FSIZE,
226 check, omError_InternalBug, OM_FLR);
227#endif
228 return ret;
229}
230
231char* _omDebugStrDup(const char* addr, OM_TFL_DECL)
232{

Callers

nothing calls this directly

Calls 3

_omCheckAddrFunction · 0.85
omSizeWOfAddrFunction · 0.85
__omDebugAllocFunction · 0.85

Tested by

no test coverage detected