diff options
author | Chris Young <chris@unsatisfactorysoftware.co.uk> | 2015-02-21 12:21:14 +0000 |
---|---|---|
committer | Chris Young <chris@unsatisfactorysoftware.co.uk> | 2015-02-21 12:21:14 +0000 |
commit | 90d88f32d126fae1de2f8984f5d55d7a72f98578 (patch) | |
tree | 0848414be894b287bda144956aa168cac91a247e /amiga | |
parent | 555276b04afa0070f3c0787cde79a09c83d32148 (diff) | |
download | netsurf-90d88f32d126fae1de2f8984f5d55d7a72f98578.tar.gz netsurf-90d88f32d126fae1de2f8984f5d55d7a72f98578.tar.bz2 |
Expand ARexx script locations on NetSurf's process.
This resolves a problem with scripts sometimes not running when they are relative to PROGDIR: and stops PROGDIR: being requested under OS3.
Fixes #2271
Diffstat (limited to 'amiga')
-rw-r--r-- | amiga/arexx.c | 11 | ||||
-rw-r--r-- | amiga/gui.c | 6 |
2 files changed, 12 insertions, 5 deletions
diff --git a/amiga/arexx.c b/amiga/arexx.c index 183b8fc98..3b386d3ad 100644 --- a/amiga/arexx.c +++ b/amiga/arexx.c @@ -142,8 +142,15 @@ void ami_arexx_handle(void) void ami_arexx_execute(char *script) { - LOG(("Executing script: %s", script)); - IDoMethod(arexx_obj, AM_EXECUTE, script, NULL, NULL, NULL, NULL, NULL); + char full_script_path[1025]; + BPTR lock; + + if(lock = Lock(script, ACCESS_READ)) { + DevNameFromLock(lock, full_script_path, 1024, DN_FULLPATH); + LOG(("Executing script: %s", full_script_path)); + IDoMethod(arexx_obj, AM_EXECUTE, full_script_path, NULL, NULL, NULL, NULL, NULL); + UnLock(lock); + } } void ami_arexx_cleanup(void) diff --git a/amiga/gui.c b/amiga/gui.c index 2f2524fe1..c1169b947 100644 --- a/amiga/gui.c +++ b/amiga/gui.c @@ -580,13 +580,13 @@ static nserror ami_set_options(struct nsoption_s *defaults) nsoption_setnull_charp(url_file, (char *)strdup(temp)); - nsoption_setnull_charp(ca_bundle, - (char *)strdup("PROGDIR:Resources/ca-bundle")); - sprintf(temp, "%s/FontGlyphCache", current_user_dir); nsoption_setnull_charp(font_unicode_file, (char *)strdup(temp)); + nsoption_setnull_charp(ca_bundle, + (char *)strdup("PROGDIR:Resources/ca-bundle")); + /* font defaults */ #ifdef __amigaos4__ nsoption_setnull_charp(font_sans, (char *)strdup("DejaVu Sans")); |