On 04.10.2012, at 08:15, Loaden wrote:

/home/loaden/qpSOFT/Projects/QtCreator/src/plugins/qtsupport/qtversionfactory.cpp

BaseQtVersion *QtVersionFactory::createQtVersionFromQMakePath(const 
Utils::FileName &qmakePath, bool isAutoDetected, const QString 
&autoDetectionSource)
{
    QHash<QString, QString> versionInfo;
    bool success = BaseQtVersion::queryQMakeVariables(qmakePath, &versionInfo);
    if (!success)
        return 0;
    Utils::FileName mkspec = BaseQtVersion::mkspecFromVersionInfo(versionInfo);

    QMakeGlobals globals;
    globals.setProperties(versionInfo);
    ProMessageHandler msgHandler(true);
    ProFileCacheManager::instance()->incRefCount();
    QMakeParser parser(ProFileCacheManager::instance()->cache(), &msgHandler);
    ProFileEvaluator evaluator(&globals, &parser, &msgHandler);
    evaluator.loadNamedSpec(mkspec.toString(), false);

 See here: the factories  size is zero!

Do you have the plugin Qt4ProjectManager enabled?

    QList<QtVersionFactory *> factories = 
ExtensionSystem::PluginManager::getObjects<QtVersionFactory>();
    qSort(factories.begin(), factories.end(), &sortByPriority);

    foreach (QtVersionFactory *factory, factories) {
        BaseQtVersion *ver = factory->create(qmakePath, &evaluator, 
isAutoDetected, autoDetectionSource);
        if (ver) {
            ProFileCacheManager::instance()->decRefCount();
            return ver;
        }
    }
    ProFileCacheManager::instance()->decRefCount();
    return 0;
}



2012/10/4 Loaden <[email protected]<mailto:[email protected]>>
See https://codereview.qt-project.org/#change,35852
I fixed the crash because Creator can't get a valid qt version from system, but 
it real exist there. both on Windows and Linux.
I try to look into it, but I can't fix the problem. It's so hard to me.
It's only a special issue for me? or for everyone?
It only happened recently.
I have not enought time to figure out what's wrong. e.g. using 'git bisect'. 
sorry.
So I just want remind it on the list.

--
Please don't ask where I come from, It's a shame!
Best Regards
Yuchen




--
Please don't ask where I come from, It's a shame!
Best Regards
Yuchen

_______________________________________________
Qt-creator mailing list
[email protected]<mailto:[email protected]>
http://lists.qt-project.org/mailman/listinfo/qt-creator

--
Eike Ziller, Senior Software Engineer - Digia, Qt
Digia Germany GmbH, Rudower Chaussee 13, D-12489 Berlin
Geschäftsführer: Mika Pälsi, Juha Varelius, Anja Wasenius
Sitz der Gesellschaft: Berlin. Registergericht: Amtsgericht Charlottenburg, HRB 
144331 B

_______________________________________________
Qt-creator mailing list
[email protected]
http://lists.qt-project.org/mailman/listinfo/qt-creator

Reply via email to