Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc
Commits
f2596fab
Commit
f2596fab
authored
Feb 04, 2010
by
Jean-Philippe André
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Final fix for extensions+Qt unload issues
Well... I hope it is final :)
parent
6db77427
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
13 additions
and
3 deletions
+13
-3
modules/gui/qt4/dialogs/extensions.cpp
modules/gui/qt4/dialogs/extensions.cpp
+11
-3
modules/gui/qt4/dialogs/extensions.hpp
modules/gui/qt4/dialogs/extensions.hpp
+1
-0
modules/gui/qt4/extensions_manager.cpp
modules/gui/qt4/extensions_manager.cpp
+1
-0
No files found.
modules/gui/qt4/dialogs/extensions.cpp
View file @
f2596fab
...
...
@@ -37,6 +37,7 @@
#include <QListWidget>
#include <QComboBox>
#include <QCloseEvent>
#include <QCoreApplication>
ExtensionsDialogProvider
*
ExtensionsDialogProvider
::
instance
=
NULL
;
...
...
@@ -113,6 +114,7 @@ ExtensionDialog* ExtensionsDialogProvider::UpdateExtDialog(
{
dialog
=
CreateExtDialog
(
p_dialog
);
dialog
->
setVisible
(
!
p_dialog
->
b_hide
);
dialog
->
has_lock
=
false
;
}
else
if
(
!
p_dialog
->
b_kill
&&
dialog
)
{
...
...
@@ -172,11 +174,11 @@ ExtensionDialog::ExtensionDialog( intf_thread_t *_p_intf,
extensions_manager_t
*
p_mgr
,
extension_dialog_t
*
_p_dialog
)
:
QDialog
(
NULL
),
p_intf
(
_p_intf
),
p_extensions_manager
(
p_mgr
)
,
p_dialog
(
_p_dialog
),
has_lock
(
fals
e
)
,
p_dialog
(
_p_dialog
),
has_lock
(
tru
e
)
{
assert
(
p_dialog
);
CONNECT
(
ExtensionsDialogProvider
::
getInstance
(),
destroyed
(),
this
,
deleteLater
()
);
this
,
parentDestroyed
()
);
msg_Dbg
(
p_intf
,
"Creating a new dialog: '%s'"
,
p_dialog
->
psz_title
);
#if HAS_QT45
...
...
@@ -661,6 +663,12 @@ void ExtensionDialog::closeEvent( QCloseEvent *event )
msg_Dbg
(
p_intf
,
"Dialog '%s' received a closeEvent"
,
p_dialog
->
psz_title
);
extension_DialogClosed
(
p_dialog
);
p_dialog
->
p_sys_intf
=
NULL
;
}
void
ExtensionDialog
::
parentDestroyed
()
{
msg_Dbg
(
p_intf
,
"About to destroy dialog '%s'"
,
p_dialog
->
psz_title
);
deleteLater
();
// May not work at this point (event loop can be ended)
p_dialog
->
p_sys_intf
=
NULL
;
vlc_cond_signal
(
&
p_dialog
->
cond
);
}
modules/gui/qt4/dialogs/extensions.hpp
View file @
f2596fab
...
...
@@ -112,6 +112,7 @@ private slots:
int
TriggerClick
(
QObject
*
object
);
void
SyncInput
(
QObject
*
object
);
void
SyncSelection
(
QObject
*
object
);
void
parentDestroyed
();
signals:
void
destroyDialog
(
extension_dialog_t
*
p_dialog
);
...
...
modules/gui/qt4/extensions_manager.cpp
View file @
f2596fab
...
...
@@ -55,6 +55,7 @@ ExtensionsManager::ExtensionsManager( intf_thread_t *_p_intf, QObject *parent )
ExtensionsManager
::~
ExtensionsManager
()
{
msg_Dbg
(
p_intf
,
"Killing extension dialog provider"
);
ExtensionsDialogProvider
::
killInstance
();
if
(
p_extensions_manager
)
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment