Exemple #1
0
void Debugger::addSandbox(const DSandboxInfo &sandbox) {
  WriteLock lock(m_mutex);
  string id = sandbox.id();
  ThreadInfo *ti = ThreadInfo::s_threadInfo.get();
  m_threadInfos[(int64)pthread_self()] = ti;
  if (m_proxies[id]) {
    ti->m_reqInjectionData.debugger = true;
    m_sandboxThreads[id].erase(ti);
  } else {
    m_sandboxThreads[id].insert(ti);
  }
  DSandboxInfoPtr old = m_sandboxes[id];
  if (old) {
    old->update(sandbox);
  } else {
    DSandboxInfoPtr sb(new DSandboxInfo());
    *sb = sandbox;
    m_sandboxes[id] = sb;
  }
}