e exec - fix exec of enlightenment_open to use actual e prefix

so this code path was using the COMPILED IN prefix like broken
old-school unix apps that cannopt be relocated. efl and e have runtime
prefix detection so use it properly. stop doing things the broken way
just because people have written broken code for 30+ years and
continue to. we don't do that in e/efl land.

@fix
This commit is contained in:
Carsten Haitzler 2016-09-25 23:53:08 +09:00 committed by Mike Blumenkrantz
parent 1609b45411
commit c27e6ee3d4
1 changed files with 3 additions and 2 deletions

View File

@ -505,10 +505,11 @@ _e_exec_cb_exec(void *data, Efreet_Desktop *desktop, char *exec, int remaining)
else if (desktop && desktop->url)
{
char *sb;
size_t size = 4096, len = sizeof(E_BINDIR "/enlightenment_open ") - 1;
size_t size = 65536, len;
sb = malloc(size);
memcpy(sb, E_BINDIR "/enlightenment_open ", len);
snprintf(sb, size, "%s/enlightenment_open ", e_prefix_bin_get());
len = strlen(sb);
sb = e_util_string_append_quoted(sb, &size, &len, desktop->url);
exe = ecore_exe_run(sb, inst);
free(sb);