From: Jean-Philippe Andre Date: Sat, 24 Jan 2009 14:23:42 +0000 (+0100) Subject: Qt: try to fix #2430 (OpenUrl can crash). X-Git-Tag: 1.0.0-pre1~1085 X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=0c96a5b6baa9a3ac2d4b1231b1e3a9944fa5636c;p=vlc Qt: try to fix #2430 (OpenUrl can crash). + Remove this-> + Remove toNativeSeparators --- diff --git a/modules/gui/qt4/dialogs/openurl.cpp b/modules/gui/qt4/dialogs/openurl.cpp index 5fa3e7b19b..49a791b154 100644 --- a/modules/gui/qt4/dialogs/openurl.cpp +++ b/modules/gui/qt4/dialogs/openurl.cpp @@ -38,6 +38,8 @@ #include #include +#include + OpenUrlDialog *OpenUrlDialog::instance = NULL; OpenUrlDialog* OpenUrlDialog::getInstance( QWidget *parent, @@ -54,10 +56,10 @@ OpenUrlDialog* OpenUrlDialog::getInstance( QWidget *parent, OpenUrlDialog::OpenUrlDialog( QWidget *parent, intf_thread_t *_p_intf, - bool bClipboard ) : QVLCDialog( parent, _p_intf ) + bool _bClipboard ) : + QVLCDialog( parent, _p_intf ), bClipboard( _bClipboard ) { - this->bClipboard = bClipboard; - this->setWindowTitle( qtr( "Open URL" ) ); + setWindowTitle( qtr( "Open URL" ) ); /* Buttons */ QPushButton *but; @@ -78,9 +80,9 @@ OpenUrlDialog::OpenUrlDialog( QWidget *parent, "to the media you want to play"), this ); - this->setToolTip( qtr( "If your clipboard contains a valid URL\n" - "or the path to a file on your computer,\n" - "it will be automatically selected." ) ); + setToolTip( qtr( "If your clipboard contains a valid URL\n" + "or the path to a file on your computer,\n" + "it will be automatically selected." ) ); /* Layout */ QVBoxLayout *vlay = new QVBoxLayout( this ); @@ -136,11 +138,11 @@ void OpenUrlDialog::showEvent( QShowEvent *ev ) if( bClipboard ) { QClipboard *clipboard = QApplication::clipboard(); - const QMimeData *data = clipboard->mimeData( QClipboard::Selection ); - QString txt = data->text().trimmed(); + assert( clipboard != NULL ); + QString txt = clipboard->text( QClipboard::Selection ).trimmed(); if( txt.isEmpty() || ( !txt.contains("://") && !QFile::exists(txt) ) ) - txt = clipboard->mimeData()->text().trimmed(); + txt = clipboard->text( QClipboard::Clipboard ).trimmed(); if( txt.contains( "://" ) || QFile::exists( txt ) ) edit->setText( txt ); diff --git a/modules/gui/qt4/dialogs_provider.cpp b/modules/gui/qt4/dialogs_provider.cpp index 65bc820ca2..dd67c06bda 100644 --- a/modules/gui/qt4/dialogs_provider.cpp +++ b/modules/gui/qt4/dialogs_provider.cpp @@ -438,13 +438,12 @@ void DialogsProvider::openUrlDialog() QString url = oud->url(); if( !url.isEmpty() ) { - playlist_Add( THEPL, qtu( toNativeSeparators( url ) ), + playlist_Add( THEPL, qtu( url ), NULL, !oud->shouldEnqueue() ? ( PLAYLIST_APPEND | PLAYLIST_GO ) : ( PLAYLIST_APPEND | PLAYLIST_PREPARSE ), PLAYLIST_END, true, false ); - RecentsMRL::getInstance( p_intf )->addRecent( - toNativeSeparators( url ) ); + RecentsMRL::getInstance( p_intf )->addRecent( url ); } } }