コード例 #1
0
ファイル: debugger.cpp プロジェクト: CyaLiven/hiphop-php
// Called directly from exception handling to indicate a user error handler
// failed to handle an exeption. NB: this is quite distinct from the hook called
// from iopThrow named phpDebuggerExceptionHook().
bool Debugger::InterruptException(CVarRef e) {
  TRACE(2, "Debugger::InterruptException\n");
  if (RuntimeOption::EnableDebugger) {
    ThreadInfo *ti = ThreadInfo::s_threadInfo.getNoCheck();
    if (ti->m_reqInjectionData.getDebugger()) {
      HPHP::Transl::VMRegAnchor _;
      InterruptVMHook(ExceptionThrown, e);
    }
  }
  return true;
}
コード例 #2
0
ファイル: debugger.cpp プロジェクト: AviMoto/hiphop-php
bool Debugger::InterruptException(CVarRef e) {
  if (RuntimeOption::EnableDebugger) {
    ThreadInfo *ti = ThreadInfo::s_threadInfo.getNoCheck();
    if (ti->m_reqInjectionData.debugger) {
      if (hhvm) {
        InterruptVMHook(ExceptionThrown, e);
      } else {
        if (ti->m_top) {
          Eval::InterruptSiteFI site(ti->m_top, e);
          Eval::Debugger::Interrupt(ExceptionThrown, NULL, &site);
          if (site.isJumping()) {
            return false;
          }
        }
      }
    }
  }
  return true;
}