summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Young <chris@unsatisfactorysoftware.co.uk>2024-06-14 13:30:50 +0100
committerChris Young <chris@unsatisfactorysoftware.co.uk>2024-06-14 13:30:50 +0100
commit43476438e5f6c1bff39f8abbe1e0df2d5756cae0 (patch)
treeef7c2a7f5fd9536676439178a7df5e3ace4ce8a1
parent55c93c8e36868e7f68c49ea91a3381679a622a52 (diff)
downloadnetsurf-43476438e5f6c1bff39f8abbe1e0df2d5756cae0.tar.gz
netsurf-43476438e5f6c1bff39f8abbe1e0df2d5756cae0.tar.bz2
Amiga: Correct another instance of the selected search provider not being converted to string.HEADmaster
This is still crashing on startup and when search providers with no icon(?) are selected.
-rw-r--r--frontends/amiga/gui.c17
-rwxr-xr-xfrontends/amiga/gui_options.c2
2 files changed, 15 insertions, 4 deletions
diff --git a/frontends/amiga/gui.c b/frontends/amiga/gui.c
index f2cae7027..7c5e1160d 100644
--- a/frontends/amiga/gui.c
+++ b/frontends/amiga/gui.c
@@ -1,5 +1,5 @@
/*
- * Copyright 2008-2020 Chris Young <chris@unsatisfactorysoftware.co.uk>
+ * Copyright 2008-2024 Chris Young <chris@unsatisfactorysoftware.co.uk>
*
* This file is part of NetSurf, http://www.netsurf-browser.org/
*
@@ -2921,8 +2921,19 @@ static BOOL ami_gui_event(void *w)
break;
case GID_SEARCH_ICON:
- GetAttr(CHOOSER_Selected, gwin->objects[GID_SEARCH_ICON], (ULONG *)&storage);
- search_web_select_provider(storage);
+#ifdef __amigaos4__
+ {
+ char *prov = NULL;
+ GetAttr(CHOOSER_SelectedNode, gwin->objects[GID_SEARCH_ICON],(ULONG *)&storage);
+ if(storage != NULL) {
+ GetChooserNodeAttrs((struct Node *)storage, CNA_Text, (ULONG *)&prov, TAG_DONE);
+ nsoption_set_charp(search_web_provider, prov);
+ }
+ }
+#else
+ /* TODO: Fix for OS<3.2 */
+#endif
+ search_web_select_provider(nsoption_charp(search_web_provider));
break;
case GID_SEARCHSTRING:
diff --git a/frontends/amiga/gui_options.c b/frontends/amiga/gui_options.c
index 9fcc00704..def43cf04 100755
--- a/frontends/amiga/gui_options.c
+++ b/frontends/amiga/gui_options.c
@@ -2015,7 +2015,7 @@ static void ami_gui_opts_use(bool save)
#ifdef __amigaos4__
GetAttr(CHOOSER_SelectedNode, gow->objects[GID_OPTS_SEARCH_PROV],(ULONG *)&tmp_node);
if(tmp_node != NULL) {
- GetChooserNodeAttrs(tmp_node, CNA_Text, (ULONG *)&data);
+ GetChooserNodeAttrs(tmp_node, CNA_Text, (ULONG *)&data, TAG_DONE);
nsoption_set_charp(search_web_provider, (char *)data);
}
#else