Russian Qt Forum

Qt => Qt Script, QtWebKit => Тема начата: 8Observer8 от Декабрь 03, 2013, 21:23



Название: Qt 5.1.1 QWebView. ERROR: ICU ambiguous alias warning for encoding: windows-1251
Отправлено: 8Observer8 от Декабрь 03, 2013, 21:23
Привет!

Создал приложение с QWebView. Вызываю метод load(). Загружается страничка сайта. Загрузка происходит нормально. Но при закрытии приложения в Application Output вижу красный текст:

Цитировать
ERROR: ICU ambiguous alias warning for encoding: windows-1251
platform\text\TextCodecICU.cpp(247) : void WebCore::TextCodecICU::createICUConverter() const
ERROR: ICU ambiguous alias warning for encoding: windows-1251
platform\text\TextCodecICU.cpp(247) : void WebCore::TextCodecICU::createICUConverter() const
LEAK: 19 CachedResource
LEAK: 1 Range
LEAK: 471 WebCoreNode

WebBrowser.pro
Код:
#-------------------------------------------------
#
# Project created by QtCreator 2013-12-03T11:08:08
#
#-------------------------------------------------

QT       += core gui webkitwidgets

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = WebBrowser
TEMPLATE = app


SOURCES += main.cpp\
        mainwindow.cpp

HEADERS  += mainwindow.h

FORMS    += mainwindow.ui

mainwindow.h
Код:
#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();

private:
    Ui::MainWindow *ui;
};

#endif // MAINWINDOW_H

mainwindow.cpp
Код:
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QUrl>

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    ui->webView->load(QUrl("http://vk.com"));
}

MainWindow::~MainWindow()
{
    delete ui;
}

main.cpp
Код:
#include "mainwindow.h"
#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow w;
    w.show();

    return a.exec();
}

Приложил все файлы проекта.

Заранее спасибо!


Название: Re: Qt 5.1.1 QWebView. ERROR: ICU ambiguous alias warning for encoding: windows-1251
Отправлено: gil9red от Декабрь 03, 2013, 21:42
Право, архив с исходниками можно было и не выкладывать :)

Не нравится ему windows-1251 ^^
ICU(International Components for Unicode) != windows-1251 :)

Можно поискать причину самому, покурив исходный код:
http://code.woboq.org/qt5/qtwebkit/Source/WebCore/platform/text/TextCodecICU.cpp.html

Похоже это просто баг фича


Название: Re: Qt 5.1.1 QWebView. ERROR: ICU ambiguous alias warning for encoding: windows-1251
Отправлено: 8Observer8 от Декабрь 03, 2013, 21:51
А что нужно сделать чтобы заработало? Есть какое-то простое решение?

Я обязательно постараюсь разобраться уже с этими кодировками...

Там ещё утечки памяти какие-то!.. А что я плохого сделал?


Название: Re: Qt 5.1.1 QWebView. ERROR: ICU ambiguous alias warning for encoding: windows-1251
Отправлено: gil9red от Декабрь 03, 2013, 23:02
Цитировать
А что я плохого сделал?
Вы просто воспользовались их классом и прогрузили сайт :)
и будете виноваты: если писали тот класс QWebView, и/или, возможно, тот сайт :)

Проверял QWebView версии 4.8.0 - никаких ошибок не было :) Сайт спокойно прогрузился и при закрытии, никакие ошибки не вывалились :)


Название: Re: Qt 5.1.1 QWebView. ERROR: ICU ambiguous alias warning for encoding: windows-1251
Отправлено: 8Observer8 от Декабрь 04, 2013, 06:19
Я ничего не понимаю в кодировках.

Не могу поверить, что это баг, так как тысячи людей бы с этим столкнулись, в гугле было бы полно ответов. Скорее всего, я неправильно передаю адрес (может его преобразовать как-то надо) или нужно какие-то настройки сделать, перед тем, как грузить.

А что будет если я так и осталю? Просто не буду обращать внимания на эти ошибки? К чему это может привести?


Название: Re: Qt 5.1.1 QWebView. ERROR: ICU ambiguous alias warning for encoding: windows-1251
Отправлено: gil9red от Декабрь 04, 2013, 07:54
Цитировать
Я ничего не понимаю в кодировках.
А для работы с webview их и не нужно знать :)

Цитировать
Не могу поверить, что это баг, так как тысячи людей бы с этим столкнулись, в гугле было бы полно ответов. Скорее всего, я неправильно передаю адрес (может его преобразовать как-то надо) или нужно какие-то настройки сделать, перед тем, как грузить.
Если вы используйте самую свежую версию Qt, то вполне реально, что там могли затесаться баги ^^

Цитировать
А что будет если я так и осталю? Просто не буду обращать внимания на эти ошибки? К чему это может привести?
Ну судя по ошибкам, просто будет происходить какая-то утечка (я сам хз, что там течет) :)
Ошибки ведь все равно при закрытии программы случались, да? А т.к. вся память после закрытия вернется системе, то никакой утечки не будет ^^


Название: Re: Qt 5.1.1 QWebView. ERROR: ICU ambiguous alias warning for encoding: windows-1251
Отправлено: 8Observer8 от Декабрь 04, 2013, 08:03
Цитировать
Ошибки ведь все равно при закрытии программы случались, да?

Да, только при закрытии. Я думаю, ничего страшного не будет. Большое спасибо! Успокоили  :)