X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fcommon%2Fquassel.cpp;h=3598fa394d5953d85535b0791ff0f830edef9e1c;hb=ab7ef4d24f62b5848b628482b7762ebfc0b53e1a;hp=57cbdcaa56372a9cbd52f8f03e19daf2e0965b4f;hpb=c015fbf8afaf64fbb5a8e2122e2a1ecf0325b1a1;p=quassel.git diff --git a/src/common/quassel.cpp b/src/common/quassel.cpp index 57cbdcaa..3598fa39 100644 --- a/src/common/quassel.cpp +++ b/src/common/quassel.cpp @@ -65,46 +65,14 @@ bool Quassel::init() if (instance()->_initialized) return true; // allow multiple invocations because of MonolithicApplication -#if 0 - // Setup signal handling - // We catch SIGTERM and SIGINT (caused by Ctrl+C) to graceful shutdown Quassel. - signal(SIGTERM, handleSignal); - signal(SIGINT, handleSignal); -#ifndef Q_OS_WIN - // SIGHUP is used to reload configuration (i.e. SSL certificates) - // Windows does not support SIGHUP - signal(SIGHUP, handleSignal); -#endif - - if (instance()->_handleCrashes) { - // we have crashhandler for win32 and unix (based on execinfo). -#if defined(Q_OS_WIN) || defined(HAVE_EXECINFO) -# ifndef Q_OS_WIN - // we only handle crashes ourselves if coredumps are disabled - struct rlimit *limit = (rlimit *)malloc(sizeof(struct rlimit)); - int rc = getrlimit(RLIMIT_CORE, limit); - - if (rc == -1 || !((long)limit->rlim_cur > 0 || limit->rlim_cur == RLIM_INFINITY)) { -# endif /* Q_OS_WIN */ - signal(SIGABRT, handleSignal); - signal(SIGSEGV, handleSignal); -# ifndef Q_OS_WIN - signal(SIGBUS, handleSignal); - } - free(limit); -# endif /* Q_OS_WIN */ -#endif /* Q_OS_WIN || HAVE_EXECINFO */ - } -#endif - - instance()->setupSignalHandling(); - - instance()->_initialized = true; qsrand(QTime(0, 0, 0).secsTo(QTime::currentTime())); + instance()->setupSignalHandling(); instance()->setupEnvironment(); instance()->registerMetaTypes(); + instance()->_initialized = true; + Network::setDefaultCodecForServer("UTF-8"); Network::setDefaultCodecForEncoding("UTF-8"); Network::setDefaultCodecForDecoding("ISO-8859-15"); @@ -334,6 +302,7 @@ void Quassel::setupSignalHandling() connect(_signalWatcher, SIGNAL(handleSignal(AbstractSignalWatcher::Action)), this, SLOT(handleSignal(AbstractSignalWatcher::Action))); } + void Quassel::handleSignal(AbstractSignalWatcher::Action action) { switch (action) { @@ -590,7 +559,7 @@ void Quassel::loadTranslation(const QLocale &locale) quasselTranslator->setObjectName("QuasselTr"); qApp->installTranslator(quasselTranslator); -#if QT_VERSION >= 0x040800 && !defined Q_OS_MAC +#ifndef Q_OS_MAC bool success = qtTranslator->load(locale, QString("qt_"), translationDirPath()); if (!success) qtTranslator->load(locale, QString("qt_"), QLibraryInfo::location(QLibraryInfo::TranslationsPath));