in the event that an ecore_exe is not passed with the exit cb, check the pid list

SVN revision: 80450
This commit is contained in:
Mike Blumenkrantz 2012-12-07 13:28:17 +00:00
parent 607417832e
commit 82b4efa5e4
1 changed files with 6 additions and 1 deletions

View File

@ -578,7 +578,12 @@ _e_exec_cb_exit(void *data __UNUSED__, int type __UNUSED__, void *event)
E_Exec_Instance *inst;
ev = event;
if (!ev->exe) return ECORE_CALLBACK_PASS_ON;
if (!ev->exe)
{
inst = e_exec_startup_id_pid_instance_find(-1, ev->pid);
if (!inst) return ECORE_CALLBACK_PASS_ON;
ev->exe = inst->exe;
}
// if (ecore_exe_tag_get(ev->exe)) printf(" tag %s\n", ecore_exe_tag_get(ev->exe));
if (!(ecore_exe_tag_get(ev->exe) &&
(!strcmp(ecore_exe_tag_get(ev->exe), "E/exec"))))