Qt应用程序在Gnome / Fedora下崩溃了X session(QDialog)

时间:2012-04-09 09:39:08

标签: qt crash x11 exit metacity

我写了一个小小的Qt4(C ++)应用程序,除了显示列表之外没什么用。 这是一个QDialog,所以按下它会关闭它。

现在,如果我这样做(运行,然后关闭)连续约3-8次,我的X会话崩溃,我得到了我的登录屏幕。 如果我杀了我的程序而不是优雅地关闭它,就不会发生这种情况。

当然,我查看了我的代码,特别是退出时执行的代码。但是,这只是一个微小的析构函数,它删除了之前分配的一些变量。评论这些行( - >退出时不再执行代码)不会改变任何内容。调用QApplication :: exit()也会崩溃。

如果重要的话,我目前正在使用Gnome这个开发系统。

我真的不知道该找什么。 有什么想法吗?

修改: 试图找到罪魁祸首,我已逐步评论出代码。但是,我现在基本上删除了所有内容,除了显示QDialog的代码和崩溃仍然发生。

以下是代码:

的main.cpp

#include <iostream>

#include <QApplication>
#include <QDialog>

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    return QDialog().exec();
}

正如你所看到的,这个程序没有任何东西(除了显示QDialog,但那是Qt,而不是我的程序)。我不知道2行代码(+ Qt代码,它应该工作,因为每天有数百万人使用它)会导致我的X会话崩溃。到目前为止,我只使用Gnome 3在Fedora 16上进行了测试。

Edit2 :使用 KDE和LXDE在同一系统上测试它(相同的二进制文件),不会崩溃。在Ubuntu上还有Gnome,KDE和LXDE,没有崩溃。必须与Gnome3 / Fedora有关...

0 个答案:

没有答案