Gitweb links:
...log
http://git.netsurf-browser.org/netsurf.git/shortlog/efbfbbc96732ba7b0b8f5...
...commit
http://git.netsurf-browser.org/netsurf.git/commit/efbfbbc96732ba7b0b8f526...
...tree
http://git.netsurf-browser.org/netsurf.git/tree/efbfbbc96732ba7b0b8f526b0...
The branch, master has been updated
via efbfbbc96732ba7b0b8f526b07c776908c79533b (commit)
via 116cd6aa435a0ef81724825993c22190476e15ef (commit)
from 7c737252e0ce7276b132b4634dc615ddad508698 (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 -----------------------------------------------------------------
commitdiff
http://git.netsurf-browser.org/netsurf.git/commitdiff/efbfbbc96732ba7b0b8...
commit efbfbbc96732ba7b0b8f526b07c776908c79533b
Author: Chris Young <chris(a)unsatisfactorysoftware.co.uk>
Commit: Chris Young <chris(a)unsatisfactorysoftware.co.uk>
Fix a serious crash that occurs if the underlying window is closed during a hook
function invoked from it.
diff --git a/amiga/gui.c b/amiga/gui.c
index 15ac1f5..37f0547 100755
--- a/amiga/gui.c
+++ b/amiga/gui.c
@@ -1927,6 +1927,16 @@ void ami_handle_msg(void)
ami_update_throbber(gwin, true);
refresh_throbber = FALSE;
}
+
+ if(ami_menu_window_close)
+ {
+ if(ami_menu_window_close == AMI_MENU_WINDOW_CLOSE_ALL)
+ ami_quit_netsurf();
+ else
+ ami_close_all_tabs(ami_menu_window_close);
+
+ ami_menu_window_close = NULL;
+ }
}
void ami_gui_appicon_remove(struct gui_window_2 *gwin)
@@ -2276,6 +2286,8 @@ void ami_quit_netsurf(void)
}
} while(node = nnode);
+
+ win_destroyed = true;
}
if(IsMinListEmpty(window_list))
diff --git a/amiga/menu.c b/amiga/menu.c
index ab8381a..b116e1b 100755
--- a/amiga/menu.c
+++ b/amiga/menu.c
@@ -676,7 +676,7 @@ static void ami_menu_item_project_closewin(struct Hook *hook, APTR
window, struc
struct gui_window_2 *gwin;
GetAttr(WINDOW_UserData, (Object *)window, (ULONG *)&gwin);
- ami_close_all_tabs(gwin);
+ ami_menu_window_close = gwin;
}
static void ami_menu_item_project_print(struct Hook *hook, APTR window, struct
IntuiMessage *msg)
@@ -736,7 +736,7 @@ static void ami_menu_item_project_about(struct Hook *hook, APTR
window, struct I
static void ami_menu_item_project_quit(struct Hook *hook, APTR window, struct
IntuiMessage *msg)
{
- ami_quit_netsurf();
+ ami_menu_window_close = AMI_MENU_WINDOW_CLOSE_ALL;
}
static void ami_menu_item_edit_cut(struct Hook *hook, APTR window, struct IntuiMessage
*msg)
diff --git a/amiga/menu.h b/amiga/menu.h
index 36c6017..d692320 100755
--- a/amiga/menu.h
+++ b/amiga/menu.h
@@ -63,9 +63,14 @@
#define AMI_MENU_CLEAR FULLMENUNUM(1,5,0)
#define AMI_MENU_FIND FULLMENUNUM(2,0,0)
+/* A special value for ami_menu_window_close */
+#define AMI_MENU_WINDOW_CLOSE_ALL 1
+
struct gui_window;
struct gui_window_2;
+struct gui_window_2 *ami_menu_window_close;
+
void ami_free_menulabs(struct gui_window_2 *gwin);
struct NewMenu *ami_create_menu(struct gui_window_2 *gwin);
void ami_menu_refresh(struct gui_window_2 *gwin);
commitdiff
http://git.netsurf-browser.org/netsurf.git/commitdiff/116cd6aa435a0ef8172...
commit 116cd6aa435a0ef81724825993c22190476e15ef
Author: Chris Young <chris(a)unsatisfactorysoftware.co.uk>
Commit: Chris Young <chris(a)unsatisfactorysoftware.co.uk>
Make it a bit more obvious what is happening, as AutoInstall/CopyStore won't give
us a progress bar.
diff --git a/amiga/dist/Install b/amiga/dist/Install
index 5fabf3e..7b8c5fe 100755
--- a/amiga/dist/Install
+++ b/amiga/dist/Install
@@ -448,6 +448,8 @@
(set #netsurf-name (select #cairo-version #static-filename #cairo-filename))
+(working "Installing NetSurf")
+
(if (= #AutoInstall 0)
(
(copyfiles
-----------------------------------------------------------------------
Summary of changes:
amiga/dist/Install | 2 ++
amiga/gui.c | 12 ++++++++++++
amiga/menu.c | 4 ++--
amiga/menu.h | 5 +++++
4 files changed, 21 insertions(+), 2 deletions(-)
diff --git a/amiga/dist/Install b/amiga/dist/Install
index 5fabf3e..7b8c5fe 100755
--- a/amiga/dist/Install
+++ b/amiga/dist/Install
@@ -448,6 +448,8 @@
(set #netsurf-name (select #cairo-version #static-filename #cairo-filename))
+(working "Installing NetSurf")
+
(if (= #AutoInstall 0)
(
(copyfiles
diff --git a/amiga/gui.c b/amiga/gui.c
index 15ac1f5..37f0547 100755
--- a/amiga/gui.c
+++ b/amiga/gui.c
@@ -1927,6 +1927,16 @@ void ami_handle_msg(void)
ami_update_throbber(gwin, true);
refresh_throbber = FALSE;
}
+
+ if(ami_menu_window_close)
+ {
+ if(ami_menu_window_close == AMI_MENU_WINDOW_CLOSE_ALL)
+ ami_quit_netsurf();
+ else
+ ami_close_all_tabs(ami_menu_window_close);
+
+ ami_menu_window_close = NULL;
+ }
}
void ami_gui_appicon_remove(struct gui_window_2 *gwin)
@@ -2276,6 +2286,8 @@ void ami_quit_netsurf(void)
}
} while(node = nnode);
+
+ win_destroyed = true;
}
if(IsMinListEmpty(window_list))
diff --git a/amiga/menu.c b/amiga/menu.c
index ab8381a..b116e1b 100755
--- a/amiga/menu.c
+++ b/amiga/menu.c
@@ -676,7 +676,7 @@ static void ami_menu_item_project_closewin(struct Hook *hook, APTR
window, struc
struct gui_window_2 *gwin;
GetAttr(WINDOW_UserData, (Object *)window, (ULONG *)&gwin);
- ami_close_all_tabs(gwin);
+ ami_menu_window_close = gwin;
}
static void ami_menu_item_project_print(struct Hook *hook, APTR window, struct
IntuiMessage *msg)
@@ -736,7 +736,7 @@ static void ami_menu_item_project_about(struct Hook *hook, APTR
window, struct I
static void ami_menu_item_project_quit(struct Hook *hook, APTR window, struct
IntuiMessage *msg)
{
- ami_quit_netsurf();
+ ami_menu_window_close = AMI_MENU_WINDOW_CLOSE_ALL;
}
static void ami_menu_item_edit_cut(struct Hook *hook, APTR window, struct IntuiMessage
*msg)
diff --git a/amiga/menu.h b/amiga/menu.h
index 36c6017..d692320 100755
--- a/amiga/menu.h
+++ b/amiga/menu.h
@@ -63,9 +63,14 @@
#define AMI_MENU_CLEAR FULLMENUNUM(1,5,0)
#define AMI_MENU_FIND FULLMENUNUM(2,0,0)
+/* A special value for ami_menu_window_close */
+#define AMI_MENU_WINDOW_CLOSE_ALL 1
+
struct gui_window;
struct gui_window_2;
+struct gui_window_2 *ami_menu_window_close;
+
void ami_free_menulabs(struct gui_window_2 *gwin);
struct NewMenu *ami_create_menu(struct gui_window_2 *gwin);
void ami_menu_refresh(struct gui_window_2 *gwin);
--
NetSurf Browser