forked from enlightenment/enlightenment
begin to put ion code to launch cserve2 for e17 in e_start...
problem... it runs... mostly.. but is buggy. svgs -> no load (generic loader issue?) sometimes ie->data2 is null (why?) font -> instead of normal bvold font.. i'm seeing an italic bold font.... eek! :( cserve2 worked well in smaller tests like elm and expedite.. it's not having a happy day with e17 :( SVN revision: 83871
This commit is contained in:
parent
1c0574d4bf
commit
d7d631ea95
|
@ -20,6 +20,7 @@
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
|
|
||||||
#include <Eina.h>
|
#include <Eina.h>
|
||||||
|
#include <Evas.h>
|
||||||
|
|
||||||
static Eina_Bool stop_ptrace = EINA_FALSE;
|
static Eina_Bool stop_ptrace = EINA_FALSE;
|
||||||
|
|
||||||
|
@ -244,6 +245,7 @@ main(int argc, char **argv)
|
||||||
const char *valgrind_log = NULL;
|
const char *valgrind_log = NULL;
|
||||||
Eina_Bool really_know = EINA_FALSE;
|
Eina_Bool really_know = EINA_FALSE;
|
||||||
struct sigaction action;
|
struct sigaction action;
|
||||||
|
pid_t child = -1, cs_child = -1;
|
||||||
#if !defined(__OpenBSD__) && !defined(__NetBSD__) && !defined(__FreeBSD__) && \
|
#if !defined(__OpenBSD__) && !defined(__NetBSD__) && !defined(__FreeBSD__) && \
|
||||||
!(defined (__MACH__) && defined (__APPLE__))
|
!(defined (__MACH__) && defined (__APPLE__))
|
||||||
Eina_Bool restart = EINA_TRUE;
|
Eina_Bool restart = EINA_TRUE;
|
||||||
|
@ -419,10 +421,26 @@ main(int argc, char **argv)
|
||||||
/* Now looping until */
|
/* Now looping until */
|
||||||
while (restart)
|
while (restart)
|
||||||
{
|
{
|
||||||
pid_t child;
|
|
||||||
|
|
||||||
stop_ptrace = EINA_FALSE;
|
stop_ptrace = EINA_FALSE;
|
||||||
|
|
||||||
|
/*
|
||||||
|
if (cs_child < 0)
|
||||||
|
{
|
||||||
|
cs_child = fork();
|
||||||
|
if (cs_child == 0)
|
||||||
|
{
|
||||||
|
char *cs_args[2] = { NULL, NULL };
|
||||||
|
|
||||||
|
cs_args[0] = (char *)evas_cserve_path_get();
|
||||||
|
execv(cs_args[0], cs_args);
|
||||||
|
exit(-1);
|
||||||
|
}
|
||||||
|
else if (cs_child > 0)
|
||||||
|
{
|
||||||
|
putenv("EVAS_CSERVE2=1");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
*/
|
||||||
child = fork();
|
child = fork();
|
||||||
|
|
||||||
if (child < 0) /* failed attempt */
|
if (child < 0) /* failed attempt */
|
||||||
|
@ -444,12 +462,11 @@ main(int argc, char **argv)
|
||||||
pid_t result;
|
pid_t result;
|
||||||
int status;
|
int status;
|
||||||
Eina_Bool done = EINA_FALSE;
|
Eina_Bool done = EINA_FALSE;
|
||||||
|
|
||||||
#ifdef HAVE_SYS_PTRACE_H
|
#ifdef HAVE_SYS_PTRACE_H
|
||||||
if (!really_know)
|
if (!really_know)
|
||||||
ptrace(PT_ATTACH, child, NULL, NULL);
|
ptrace(PT_ATTACH, child, NULL, NULL);
|
||||||
#endif
|
|
||||||
result = waitpid(child, &status, 0);
|
result = waitpid(child, &status, 0);
|
||||||
#ifdef HAVE_SYS_PTRACE_H
|
|
||||||
if ((!really_know) && (!stop_ptrace))
|
if ((!really_know) && (!stop_ptrace))
|
||||||
{
|
{
|
||||||
if (WIFSTOPPED(status))
|
if (WIFSTOPPED(status))
|
||||||
|
|
Loading…
Reference in New Issue