Russian Qt Forum
Май 22, 2024, 01:34 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Qt 5.1.1 QWebView. ERROR: ICU ambiguous alias warning for encoding: windows-1251  (Прочитано 5288 раз)
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();
}

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

Заранее спасибо!
Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #1 : Декабрь 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

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

8Observer8
Гость
« Ответ #2 : Декабрь 03, 2013, 21:51 »

А что нужно сделать чтобы заработало? Есть какое-то простое решение?

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

Там ещё утечки памяти какие-то!.. А что я плохого сделал?
Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #3 : Декабрь 03, 2013, 23:02 »

Цитировать
А что я плохого сделал?
Вы просто воспользовались их классом и прогрузили сайт Улыбающийся
и будете виноваты: если писали тот класс QWebView, и/или, возможно, тот сайт Улыбающийся

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

8Observer8
Гость
« Ответ #4 : Декабрь 04, 2013, 06:19 »

Я ничего не понимаю в кодировках.

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

А что будет если я так и осталю? Просто не буду обращать внимания на эти ошибки? К чему это может привести?
Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #5 : Декабрь 04, 2013, 07:54 »

Цитировать
Я ничего не понимаю в кодировках.
А для работы с webview их и не нужно знать Улыбающийся

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

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

8Observer8
Гость
« Ответ #6 : Декабрь 04, 2013, 08:03 »

Цитировать
Ошибки ведь все равно при закрытии программы случались, да?

Да, только при закрытии. Я думаю, ничего страшного не будет. Большое спасибо! Успокоили  Улыбающийся
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.044 секунд. Запросов: 19.