fixed a bug preventing quasel from crashing on exit
authorMarcus Eggenberger <egs@quassel-irc.org>
Fri, 22 Jun 2007 15:35:44 +0000 (15:35 +0000)
committerMarcus Eggenberger <egs@quassel-irc.org>
Fri, 22 Jun 2007 15:35:44 +0000 (15:35 +0000)
src/common/main_mono.cpp
src/qtgui/mainwin.cpp

index a7565c5..84e6fae 100644 (file)
@@ -57,9 +57,13 @@ int main(int argc, char **argv) {
   mainWin->init();
   int exitCode = app.exec();
   //delete core;
+  
+  // the mainWin has to be deleted before the Core
+  // if not Quassel will crash on exit under certain conditions since the gui
+  // still wants to access clientdata
+  delete mainWin;
   Client::destroy();
   Core::destroy();
-  delete mainWin;
   //delete guiProxy;
   //delete coreProxy;
   //delete global;
index f4f0c7e..d05de42 100644 (file)
@@ -128,20 +128,20 @@ void MainWin::setupViews() {
   //connect(this, SIGNAL(bufferUpdated(Buffer *)), model, SLOT(bufferUpdated(Buffer *)));
   //connect(this, SIGNAL(bufferActivity(Buffer::ActivityLevel, Buffer *)), model, SLOT(bufferActivity(Buffer::ActivityLevel, Buffer *)));
   
-  BufferViewDock *all = new BufferViewDock(model, tr("All Buffers"), BufferViewFilter::AllNets);
+  BufferViewDock *all = new BufferViewDock(model, tr("All Buffers"), BufferViewFilter::AllNets, QStringList(), this);
   registerBufferViewDock(all);
   
-  BufferViewDock *allchans = new BufferViewDock(model, tr("All Channels"), BufferViewFilter::AllNets|BufferViewFilter::NoQueries|BufferViewFilter::NoServers);
+  BufferViewDock *allchans = new BufferViewDock(model, tr("All Channels"), BufferViewFilter::AllNets|BufferViewFilter::NoQueries|BufferViewFilter::NoServers, QStringList(), this);
   registerBufferViewDock(allchans);
   
-  BufferViewDock *allqrys = new BufferViewDock(model, tr("All Queries"), BufferViewFilter::AllNets|BufferViewFilter::NoChannels|BufferViewFilter::NoServers);
+  BufferViewDock *allqrys = new BufferViewDock(model, tr("All Queries"), BufferViewFilter::AllNets|BufferViewFilter::NoChannels|BufferViewFilter::NoServers, QStringList(), this);
   registerBufferViewDock(allqrys);
 
   
-  BufferViewDock *allnets = new BufferViewDock(model, tr("All Networks"), BufferViewFilter::AllNets|BufferViewFilter::NoChannels|BufferViewFilter::NoQueries);
+  BufferViewDock *allnets = new BufferViewDock(model, tr("All Networks"), BufferViewFilter::AllNets|BufferViewFilter::NoChannels|BufferViewFilter::NoQueries, QStringList(), this);
   registerBufferViewDock(allnets);
 
-  BufferViewDock *fullCustom = new BufferViewDock(model, tr("Full Custom"), BufferViewFilter::FullCustom|BufferViewFilter::SomeNets);
+  BufferViewDock *fullCustom = new BufferViewDock(model, tr("Full Custom"), BufferViewFilter::FullCustom|BufferViewFilter::SomeNets, QStringList(), this);
   registerBufferViewDock(fullCustom);
 
   ui.menuViews->addSeparator();