--- /usr/sbin/vserver 2011-04-07 16:39:34.000000000 +0200 +++ /usr/sbin/vserver 2011-04-07 19:50:45.000000000 +0200 @@ -203,16 +203,27 @@ test "$cmd" != start -o -n "$OPTION_NONAMESPACE" || isAvoidNamespace "$VSERVER_DIR" || \ exec $_VNAMESPACE --new -- $_VSERVER ----nonamespace "${OPTIONS_ORIG[@]}" +. $__PKGLIBDIR/vserver.functions + # Enter the namespace early so we can test for files inside the guest test "$cmd" != enter -a "$cmd" != stop || \ test -n "$OPTION_NONAMESPACE" || isAvoidNamespace "$VSERVER_DIR" || \ - ! isVserverRunning "$VSERVER_DIR" || \ - exec $_VNAMESPACE --enter "$VSERVER_DIR" -- $_VSERVER ----nonamespace "${OPTIONS_ORIG[@]}" + ! isVserverRunning "$VSERVER_DIR" || { + $_VNAMESPACE --enter "$VSERVER_DIR" -- $_VSERVER ----nonamespace "${OPTIONS_ORIG[@]}" + result=$? + + if test "$cmd" == "stop" ; then + pushd "$VSERVER_DIR" > /dev/null + execScriptlets "$VSERVER_DIR" "$VSERVER_NAME" teardown + popd > /dev/null + fi + + exit $result + } set_init_cwd cd / -. $__PKGLIBDIR/vserver.functions case "$2" in (start|stop|delete) shift 2