[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [E-devel] E CVS: apps/entrance essiene



On Tue, 26 Sep 2006 14:50:59 -0400 (EDT) Enlightenment CVS
<noreply@fitx-00.ewr.caosity.org> babbled:

good! :) (now to test it out...).

just a note - remember even if you don't review patches in detail - test them
and notice changes. memory, # of processes, cpu usage, pixel problems and
so-on. i can understand if it's some small obscure almost-never-encountered
case, but this here was a "always and ever happens all the time and leaves 2
fat entrance processes floating about". :) maybe we need to take away all but
32MB of your ram so you notice... :) hehehe :) seriously - make sure you do
the  checks. i check e itself on a very regular basis.

> Enlightenment CVS committal
> 
> Author  : essiene
> Project : e17
> Module  : apps/entrance
> 
> Dir     : e17/apps/entrance/src/client
> 
> 
> Modified Files:
> 	entrance_session.c 
> 
> 
> Log Message:
> Fix bloat issue noticed by Raster this morning. We're back to normal mem
> usage. I've just learnt a practical lesson on patch review... I actually
> should have caught this earlier.
> 
> ===================================================================
> RCS file: /cvs/e/e17/apps/entrance/src/client/entrance_session.c,v
> retrieving revision 1.86
> retrieving revision 1.87
> diff -u -3 -r1.86 -r1.87
> --- entrance_session.c	31 Aug 2006 14:37:37 -0000	1.86
> +++ entrance_session.c	26 Sep 2006 18:50:29 -0000	1.87
> @@ -479,15 +479,38 @@
>          exit(0);
>       default:
>          syslog(LOG_NOTICE, "Replacing Entrance with simple login program to
> wait for session end.");
> -	wait(NULL); 
> +#ifdef HAVE_PAM
> +        if (e->config->auth == ENTRANCE_USE_PAM)
> +        {
> +           snprintf(buf, sizeof(buf), "%s/%s/entrance_login %i %s %s",
> +                    PACKAGE_LIB_DIR, PACKAGE, (int) pid, pwent->pw_name, 
> +		    e->display);
> +        }
> +        else
> +#endif
> +        {
> +           snprintf(buf, sizeof(buf), "%s/%s/entrance_login %i",
> +                    PACKAGE_LIB_DIR, PACKAGE, (int) pid);
> +        }
> +        shell = strdup("/bin/sh");
> +        /* this bypasses a race condition where entrance loses its x
> +           connection before the wm gets it and x goes and resets itself */
> +        sleep(10);
> +        /*
> +         * FIXME These should be called!
>          ecore_x_shutdown();
>          ecore_shutdown();
> +        */
>          break;
>     }
>     struct_passwd_free(pwent);
>     entrance_session_free(e);
>     if (shell) free(shell);
>     if (user) free(user);
> +   /* replace this process with a clean small one that just waits for its */
> +   /* child to exit.. passed on the cmd-line */
> +
> +   execl("/bin/sh", "/bin/sh", "-l", "-c", buf, NULL);
>     if (buf) free(buf);
>  }
>  
> 
> 
> 
> -------------------------------------------------------------------------
> Take Surveys. Earn Cash. Influence the Future of IT
> Join SourceForge.net's Techsay panel and you'll get the chance to share your
> opinions on IT & business topics through brief surveys -- and earn cash
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> _______________________________________________
> enlightenment-cvs mailing list
> enlightenment-cvs@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
> 


-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler)    raster@rasterman.com
裸好多
Tokyo, Japan (東京 日本)