gnash-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnash-commit] [SCM] Gnash branch, master, updated. release_0_8_9_final-


From: Sandro Santilli
Subject: [Gnash-commit] [SCM] Gnash branch, master, updated. release_0_8_9_final-2250-g62cfdfe
Date: Sat, 16 Jan 2016 11:05:26 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Gnash".

The branch, master has been updated
       via  62cfdfe81d6d9a17c722558dc6046b6596342e98 (commit)
       via  17a8452d9691d87ca4dda9f4e7edc872ff29c9ea (commit)
      from  e8b111c3ca89eb23624d5c994fc4dff9b787d161 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://git.savannah.gnu.org/cgit//commit/?id=62cfdfe81d6d9a17c722558dc6046b6596342e98


commit 62cfdfe81d6d9a17c722558dc6046b6596342e98
Author: Nutchanon Wetchasit <address@hidden>
Date:   Sat Jan 16 12:00:32 2016 +0100

    Defer gtk-gnash's window cleanup to the end of gtk_main().
    
    This fixes window-related assertion warnings in bug #27981.

diff --git a/gui/gtk/gtk.cpp b/gui/gtk/gtk.cpp
index 82e88f3..7fc22c8 100644
--- a/gui/gtk/gtk.cpp
+++ b/gui/gtk/gtk.cpp
@@ -260,6 +260,7 @@ GtkGui::run()
     {
         gtk_main();
     }
+    gtk_widget_destroy(_window);
     return true;
 }
 
@@ -593,7 +594,6 @@ GtkGui::quitUI()
     // Unregister the callback registered by setTimeout, if any. This also
     // removes other callbacks, but we're about to go away anyway.
     while (g_source_remove_by_user_data(this)) {}
-    gtk_widget_destroy(_window);
 
     _exiting = true;
     if (gtk_main_level() > 0)

http://git.savannah.gnu.org/cgit//commit/?id=17a8452d9691d87ca4dda9f4e7edc872ff29c9ea


commit 17a8452d9691d87ca4dda9f4e7edc872ff29c9ea
Author: Nutchanon Wetchasit <address@hidden>
Date:   Sat Jan 16 11:58:02 2016 +0100

    Make gtk-gnash avoid entering gtk_main() if SWF exited in first frame.
    
    This fixes the freeze in bug #27981 and bug #46308.

diff --git a/gui/gtk/gtk.cpp b/gui/gtk/gtk.cpp
index 6f6d828..82e88f3 100644
--- a/gui/gtk/gtk.cpp
+++ b/gui/gtk/gtk.cpp
@@ -144,6 +144,7 @@ GtkGui::GtkGui(unsigned long xid, float scale, bool loop, 
RunResources& r)
     ,_popup_menu_alt(0)
     ,_menubar(0)
     ,_vbox(0)
+    ,_exiting(false)
     ,_advanceSourceTimer(0)
 {
 }
@@ -255,7 +256,10 @@ GtkGui::run()
     // Kick-start before setting the interval timeout
     advance_movie(this);
 
-    gtk_main();
+    if (!_exiting)
+    {
+        gtk_main();
+    }
     return true;
 }
 
@@ -590,7 +594,12 @@ GtkGui::quitUI()
     // removes other callbacks, but we're about to go away anyway.
     while (g_source_remove_by_user_data(this)) {}
     gtk_widget_destroy(_window);
-    gtk_main_quit();
+
+    _exiting = true;
+    if (gtk_main_level() > 0)
+    {
+        gtk_main_quit();
+    }
 }
 
 /*private*/
diff --git a/gui/gtk/gtksup.h b/gui/gtk/gtksup.h
index 1cefe35..7250a00 100644
--- a/gui/gtk/gtksup.h
+++ b/gui/gtk/gtksup.h
@@ -144,6 +144,9 @@ private:
     GtkWidget* _menubar;
     GtkWidget* _vbox;
 
+    /// Exit flag, set by quitUI() to prevent entering gtk_main() if Gnash
+    /// terminated in first frame.
+    bool _exiting;
 
     /// Add key press events to the toplevel window.
     //

-----------------------------------------------------------------------

Summary of changes:
 gui/gtk/gtk.cpp  |   15 ++++++++++++---
 gui/gtk/gtksup.h |    3 +++
 2 files changed, 15 insertions(+), 3 deletions(-)


hooks/post-receive
-- 
Gnash



reply via email to

[Prev in Thread] Current Thread [Next in Thread]