Подробности

[В начало]

Проблема в реализации № S0713

Краткое описание

Некорректное взаимодействие интерфейсов QFileDialog::resolveSymlinks() const и QFileDialog::setResolveSymlinks(bool) библиотеки Qt4

Подробное описание

Интерфейс QFileDialog::resolveSymlinks() const не возвращает 'true' после вызова setResolveSymlinks(true), что противоречит стандарту

Раздел стандарта

http://doc.trolltech.com/4.2/qfiledialog.html#resolveSymlinks-prop

Пример

#include <QApplication>
#include <QtGui/qfiledialog.h>
#include <QTimer>
#include <iostream>

int main()
{
    //PREAMBLE
    #ifdef Q_WS_X11
    bool useGUI = getenv( "DISPLAY" ) != 0;
    #else
    bool useGUI = TRUE;
    #endif
    int app_argc = 1;
    char* app_argv[2]={"", NULL};
    QApplication::setColorSpec(QApplication::ManyColor);
    QApplication* app =
    new QApplication(app_argc, app_argv, useGUI);
    
    //PARAMETER INITIALIZATION
    QFileDialog * Obj = new QFileDialog();
    Obj->setResolveSymlinks(true);
    //TARGET INTERFACE
    bool Return = Obj->resolveSymlinks();
    if(Return != true)
    {
        std::cout<<"ERROR"<<std::endl;
    }
    //FINALIZATION
    QTimer::singleShot(100, app, SLOT(quit()));
    return app->exec();
}

Компонент

qt4 4.2, 4.3, 4.4

Окружение

Прочее

1) x86, Debian 4.1: qt-4.3.3, qt-4.4.3
2) x86, Fedora 8: qt-4.2.3, qt-4.3.3, qt-4.4.3
3) IA64, SLES 10.1: qt-4.3.3, qt-4.4.3
4) x86-64, RHEL 4: qt-4.3.3, qt-4.4.3
5) IA64, Debian 4.1: qt-4.3.3, qt-4.4.3
6) PPC, SLES 10: qt-4.3.3, qt-4.4.3
7) PPC64, SLES 10: qt-4.3.3, qt-4.4.3
8) x86, Ubuntu 8.10: qt-4.4.3

Статус

Исправлено в qt4 4.5.0

[В начало]