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

Function _omDebugRealloc

omalloc/omDebug.c:147–180  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

145
146
147void* _omDebugRealloc(void* old_addr, void* old_size_bin, void* new_size_bin,
148 omTrackFlags_t old_flags, omTrackFlags_t new_flags, OM_CTFL_DECL)
149{
150 void* new_addr = NULL;
151 omError_t status = omError_NoError;
152 OM_R_DEF;
153 check = MAX(check, om_Opts.MinCheck);
154 track = MAX(track, om_Opts.MinTrack);
155 check = MIN(check, om_Opts.MaxCheck);
156 track = MIN(track, om_Opts.MaxTrack);
157
158 if (check)
159 {
160 status = _omCheckAddr(old_addr, old_size_bin, old_flags|OM_FUSED, check, omError_NoError, OM_FLR_VAL);
161
162 if (status == omError_NoError && check > 1 && new_flags & OM_FBIN)
163 status = omDoCheckBin((omBin)new_size_bin, 1, check-1, omError_MemoryCorrupted, OM_FLR_VAL);
164
165 if (new_size_bin == NULL && !(new_flags & OM_FSLOPPY))
166 {
167 omReportError(omError_NullSizeAlloc, omError_NoError, OM_FLR_VAL, "");
168 new_size_bin = (void*) 1;
169 }
170 }
171
172 new_addr = __omDebugRealloc(old_addr, old_size_bin, new_size_bin,
173 status, old_flags, new_flags, track, OM_FLR_VAL);
174#ifdef OM_INTERNAL_DEBUG
175 if (status == omError_NoError)
176 (void) _omCheckAddr(new_addr, new_size_bin,new_flags|OM_FUSED,check, omError_InternalBug, OM_FLR);
177#endif
178
179 return new_addr;
180}
181
182void _omDebugFree(void* addr, void* size_bin,
183 omTrackFlags_t flags, OM_CFL_DECL)

Callers

nothing calls this directly

Calls 4

_omCheckAddrFunction · 0.85
omDoCheckBinFunction · 0.85
omReportErrorFunction · 0.85
__omDebugReallocFunction · 0.85

Tested by

no test coverage detected