Enlightenment CVS committal
Author : raster
Project : e17
Module : libs/ecore
Dir : e17/libs/ecore/src/lib/ecore
Modified Files:
Ecore.h ecore_exe.c ecore_private.h
Log Message:
allow to have sub-rpocessed controlled by parent if parent dies/segvs/kill
-9'd , ecore_exe'd children die too.
===================================================================
RCS file: /cvs/e/e17/libs/ecore/src/lib/ecore/Ecore.h,v
retrieving revision 1.61
retrieving revision 1.62
diff -u -3 -r1.61 -r1.62
--- Ecore.h 9 Mar 2008 15:56:17 -0000 1.61
+++ Ecore.h 10 Mar 2008 06:44:32 -0000 1.62
@@ -95,7 +95,8 @@
ECORE_EXE_PIPE_ERROR_LINE_BUFFERED = 16, /**< Errors are buffered until
a newline and delivered 1 event per line */
ECORE_EXE_PIPE_AUTO = 32, /**< stdout and stderr are buffered
automatically */
ECORE_EXE_RESPAWN = 64, /**< FIXME: Exe is restarted if it dies */
- ECORE_EXE_USE_SH = 128 /**< Use /bin/sh to run the command. */
+ ECORE_EXE_USE_SH = 128, /**< Use /bin/sh to run the command. */
+ ECORE_EXE_NOT_LEADER = 256 /**< Do not use setsid() to have the
executed process be its own session leader */
};
typedef enum _Ecore_Exe_Flags Ecore_Exe_Flags;
===================================================================
RCS file: /cvs/e/e17/libs/ecore/src/lib/ecore/ecore_exe.c,v
retrieving revision 1.70
retrieving revision 1.71
diff -u -3 -r1.70 -r1.71
--- ecore_exe.c 11 Jan 2008 07:33:56 -0000 1.70
+++ ecore_exe.c 10 Mar 2008 06:44:32 -0000 1.71
@@ -1296,7 +1296,7 @@
}
}
- setsid();
+ if (!(flags & ECORE_EXE_NOT_LEADER)) setsid();
if ((flags & ECORE_EXE_USE_SH))
{
errno = 0;
===================================================================
RCS file: /cvs/e/e17/libs/ecore/src/lib/ecore/ecore_private.h,v
retrieving revision 1.51
retrieving revision 1.52
diff -u -3 -r1.51 -r1.52
--- ecore_private.h 9 Mar 2008 15:56:17 -0000 1.51
+++ ecore_private.h 10 Mar 2008 06:44:32 -0000 1.52
@@ -159,7 +159,8 @@
ECORE_EXE_PIPE_ERROR_LINE_BUFFERED = 16,
ECORE_EXE_PIPE_AUTO = 32,
ECORE_EXE_RESPAWN = 64,
- ECORE_EXE_USE_SH = 128
+ ECORE_EXE_USE_SH = 128,
+ ECORE_EXE_NOT_LEADER = 256
/* FIXME: Getting respawn to work
*
* There is no way that we can do anything about the internal state info of
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
enlightenment-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs