internal BreakpointHandle ResolveBreakpoint(Breakpoint breakpoint)
{
if (!module.IsLoaded)
{
return(null);
}
if ((function == null) && (source == null))
{
if (file != null)
{
source = file.FindMethod(line);
}
else
{
throw new TargetException(TargetError.LocationInvalid);
}
if ((source != null) && source.IsManaged)
{
function = source.Function;
}
}
if (function != null)
{
return(function.GetBreakpointHandle(breakpoint, line, column));
}
if ((source == null) || source.IsManaged)
{
throw new TargetException(TargetError.LocationInvalid);
}
TargetAddress address = GetAddress();
if (!address.IsNull)
{
return(new AddressBreakpointHandle(breakpoint, address));
}
return(null);
}