Hello,
while working on a module I somehow screwed up my E config.
After that my E was trying to load a NULL module, which caused various segfaults.
So I added a few more security checks and everything ran fine.

Samuel 'lok' Mendes
Index: e_module.c
===================================================================
RCS file: /cvs/e/e17/apps/e/src/bin/e_module.c,v
retrieving revision 1.85
diff -u -r1.85 e_module.c
--- e_module.c	31 Oct 2007 12:21:01 -0000	1.85
+++ e_module.c	23 Jan 2008 09:42:28 -0000
@@ -198,7 +198,7 @@
 	E_Config_Module *em;
 	
 	em = l->data;
-	if (!strcmp(em->name, m->name))
+	if (em && em->name && !strcmp(em->name, m->name))
 	  {
 	     in_list = 1;
 	     break;
@@ -440,7 +440,7 @@
 	E_Config_Module *em;
 	
 	em = l->data;
-	if (!strcmp(em->name, m->name))
+	if (em && em->name && !strcmp(em->name, m->name))
 	  {
 	     e_config->modules = evas_list_remove(e_config->modules, em);
 	     if (em->name) evas_stringshare_del(em->name);
Index: evas_stringshare.c
===================================================================
RCS file: /cvs/e/e17/libs/evas/src/lib/data/evas_stringshare.c,v
retrieving revision 1.12
diff -u -r1.12 evas_stringshare.c
--- evas_stringshare.c	4 May 2007 08:18:05 -0000	1.12
+++ evas_stringshare.c	23 Jan 2008 09:41:52 -0000
@@ -58,6 +58,8 @@
    char *el_str;
    Evas_Stringshare_El *el, *pel = NULL;
 
+   if (!str) return NULL;
+
    hash_num = _evas_stringshare_hash_gen(str, &slen);
    for (el = share.buckets[hash_num]; el; pel = el, el = el->next)
      {
@@ -90,6 +92,8 @@
    int hash_num, slen;
    char *el_str;
    Evas_Stringshare_El *el, *pel = NULL;
+
+   if (!str) return NULL;
 
    hash_num = _evas_stringshare_hash_gen(str, &slen);
    for (el = share.buckets[hash_num]; el; pel = el, el = el->next)
-------------------------------------------------------------------------
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-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to