Comment 1 for bug 753269

Revision history for this message
Richard Dale (rdale) wrote : Re: unity-2d-spread crashes on change of workspace

This is the debug logging I added:

void WindowsList::updateWorkspaceRole(int workspace)
{
    Q_UNUSED(workspace);

    qDebug() << Q_FUNC_INFO << this;
    WindowInfo *window = qobject_cast<WindowInfo*>(sender());
    qDebug() << Q_FUNC_INFO << this << window << window->title();
    if (window != NULL) {
        int row = m_windows.indexOf(window);
        qDebug() << Q_FUNC_INFO << this << "row:" << row;
        if (row != -1) {
            QModelIndex changedItem = index(row);
            qDebug() << Q_FUNC_INFO << this << "changedItem:" << changedItem;
            Q_EMIT dataChanged(changedItem, changedItem);
        }
    }
    qDebug() << Q_FUNC_INFO << this << "EXIT";
}

And here is a sample of the output before the crash:

unity-2d-spread: [DEBUG] void WindowsList::load() WindowsList(0x83fe920) WindowInfo(0x863af60) "rdale@ubuntu: /tmp"
unity-2d-spread: [DEBUG] void WindowsList::load() WindowsList(0x83fe920) WindowInfo(0x864ea38) "rdale@ubuntu: ~/src/unity-2d/build"
unity-2d-spread: [DEBUG] void WindowsList::load() WindowsList(0x83fe920) WindowInfo(0x8617dd8) "rdale@ubuntu: ~"
unity-2d-spread: [DEBUG] void WindowsList::load() WindowsList(0x83fe920) WindowInfo(0x845e4e0) "windowslist.cpp - unity-2d - Qt Creator"
unity-2d-spread: [DEBUG] void WindowsList::load() WindowsList(0x83fe920) WindowInfo(0x8583af0) "Ubuntu Start Page - Mozilla Firefox"
unity-2d-spread: [WARNING] Wnck: Received a timestamp of 0; window activation may not function properly.

unity-2d-spread: [DEBUG] virtual WindowInfo::~WindowInfo() WindowInfo(0x863af60) "rdale@ubuntu: /tmp"
unity-2d-spread: [DEBUG] virtual WindowInfo::~WindowInfo() WindowInfo(0x864ea38) "rdale@ubuntu: ~/src/unity-2d/build"
unity-2d-spread: [DEBUG] virtual WindowInfo::~WindowInfo() WindowInfo(0x8617dd8) "rdale@ubuntu: ~"
unity-2d-spread: [DEBUG] virtual WindowInfo::~WindowInfo() WindowInfo(0x845e4e0) "windowslist.cpp - unity-2d - Qt Creator"
unity-2d-spread: [DEBUG] virtual WindowInfo::~WindowInfo() WindowInfo(0x8583af0) "Ubuntu Start Page - Mozilla Firefox"
unity-2d-spread: [DEBUG] void WindowsList::addWindow(BamfView*) WindowsList(0x83fe920) WindowInfo(0x83bbe90) "Qt Creator"
unity-2d-spread: [DEBUG] void WindowsList::updateWorkspaceRole(int) WindowsList(0x83fe920)
unity-2d-spread: [DEBUG] void WindowsList::updateWorkspaceRole(int) WindowsList(0x83fe920) WindowInfo(0x83bbe90) "Qt Creator"
unity-2d-spread: [DEBUG] void WindowsList::updateWorkspaceRole(int) WindowsList(0x83fe920) row: 0
unity-2d-spread: [DEBUG] void WindowsList::updateWorkspaceRole(int) WindowsList(0x83fe920) changedItem: QModelIndex(0,0,0x0,WindowsList(0x83fe920) )
terminate called after throwing an instance of 'std::bad_alloc'
  what(): std::bad_alloc