Comment 11 for bug 1269259

Revision history for this message
RJ Skerry-Ryan (rryan) wrote :

Looking at LibraryControl::m_numDecks and LibraryControl::m_numSamplers, m_numSamplers has definitely been trampled somehow. In particular, its parent should be 0x0 like m_numDecks (m_numSamplers never gets a parent). Its vptr and q_ptr fields look corrupt.

(gdb) print *pLibrary->m_pLibraryControl->m_numDecks.d_ptr.d
$110 = {
  _vptr$QObjectData = 0x1013e6e70,
  q_ptr = 0x10831e7f8,
  parent = 0x0,
  children = {
    {
      p = {
        d = 0x1013e2f80
      },
      d = 0x1013e2f80
    }
  },
  isWidget = 0,
  pendTimer = 0,
  blockSig = 0,
  wasDeleted = 0,
  ownObjectName = 0,
  sendChildEvents = 1,
  receiveChildEvents = 1,
  inEventHandler = 0,
  inThreadChangeEvent = 0,
  hasGuards = 0,
  unused = 139266,
  postedEvents = 0,
  metaObject = 0x0
}
(gdb) print *pLibrary->m_pLibraryControl->m_numSamplers.d_ptr.d
$111 = {
  _vptr$QObjectData = 0xc00000012,
  q_ptr = 0xd00000000000000c,
  parent = 0x1083216da,
  children = {
    {
      p = {
        d = 0x6d0075006e7620
      },
      d = 0x6d0075006e7620
    }
  },
  isWidget = 1,
  pendTimer = 1,
  blockSig = 1,
  wasDeleted = 1,
  ownObjectName = 1,
  sendChildEvents = 0,
  receiveChildEvents = 1,
  inEventHandler = 0,
  inThreadChangeEvent = 0,
  hasGuards = 0,
  unused = 7360,
  postedEvents = 7143521,
  metaObject = 0x720065006c0070
}