links

lynx-like text mode web browser
git clone anongit@rnpnr.xyz:links.git
Log | Files | Refs | Feed | README | LICENSE

Commit: bcf0d449932a83669d80dc0e600a3f8186a6cbc5
Parent: 02d1ec7ddcdb17a6b305cb77c51d865bbc93da28
Author: opask
Date:   Fri,  7 Sep 2018 14:39:41 -0600

remove path_to_exe, replace with argv0 where needed

Diffstat:
Mdefault.c | 8++------
Mlinks.h | 3+--
Mmain.c | 7+++----
Mos_dep.c | 6------
Mview.c | 4++--
5 files changed, 8 insertions(+), 20 deletions(-)

diff --git a/default.c b/default.c @@ -316,12 +316,8 @@ static unsigned char *get_home(int *n) if (!home) home = stracpy(cast_uchar getenv("HOME")); if (!home) { int i; - home = stracpy(path_to_exe); - if (!home) { - free(config_dir); - return NULL; - } - for (i = (int)strlen(cast_const_char home) - 1; i >= 0; i--) if (dir_sep(home[i])) { + home = (unsigned char *)argv0; + for (i = strlen(argv0) - 1; i >= 0; i--) if (dir_sep(home[i])) { home[i + 1] = 0; goto br; } diff --git a/links.h b/links.h @@ -347,7 +347,6 @@ void do_signal(int sig, void (*handler)(int)); uttime get_time(void); uttime get_absolute_time(void); void ignore_signals(void); -void get_path_to_exe(void); int os_get_system_name(unsigned char *buffer); unsigned char *os_conv_to_external_path(unsigned char *, unsigned char *); unsigned char *os_fixup_external_program(unsigned char *); @@ -1601,7 +1600,7 @@ extern int terminal_pipe[2]; extern int retval; -extern unsigned char *path_to_exe; +extern const char *argv0; extern unsigned char **g_argv; extern int g_argc; diff --git a/main.c b/main.c @@ -21,7 +21,7 @@ static void unhandle_basic_signals(struct terminal *); static int init_b = 0; int g_argc; -unsigned char *path_to_exe; +const char *argv0; unsigned char **g_argv; void @@ -38,7 +38,7 @@ die(const char *errstr, ...) void usage(void) { - die("usage: %s [options] [url]\n", g_argv[0]); + die("usage: %s [options] [url]\n", argv0); } void * @@ -487,8 +487,7 @@ main(int argc, char *argv[]) { g_argc = argc; g_argv = (unsigned char **)argv; - - get_path_to_exe(); + argv0 = argv[0]; select_loop(init); terminate_all_subsystems(); diff --git a/os_dep.c b/os_dep.c @@ -312,12 +312,6 @@ void close_fork_tty(void) EINTRLOOP(rs, close(k->conn)); } -void get_path_to_exe(void) -{ - path_to_exe = g_argv[0]; -} - - unsigned char *os_conv_to_external_path(unsigned char *file, unsigned char *prog) { return stracpy(file); diff --git a/view.c b/view.c @@ -3102,7 +3102,7 @@ static void send_open_in_new_xterm(struct terminal *term, void *open_window_, vo enc_url = encode_url(ses->dn_url); add_to_str(&p, &pl, enc_url); free(enc_url); - path = escape_path(path_to_exe); + path = escape_path(g_argv[0]); if (open_window(term, path, p)) cant_open_new_window(term); free(p); @@ -3119,7 +3119,7 @@ static void send_open_new_xterm(struct terminal *term, void *open_window_, void unsigned char *path; add_to_str(&p, &pl, cast_uchar "-base-session "); add_num_to_str(&p, &pl, ses->id); - path = escape_path(path_to_exe); + path = escape_path(g_argv[0]); if (open_window(term, path, p)) cant_open_new_window(term); free(path);