Enlightenment CVS committal Author : kwo Project : e16 Module : e
Dir : e16/e/src Modified Files: borders.c Log Message: Fix potential segv with broken themes. =================================================================== RCS file: /cvs/e/e16/e/src/borders.c,v retrieving revision 1.303 retrieving revision 1.304 diff -u -3 -r1.303 -r1.304 --- borders.c 30 Dec 2007 20:58:00 -0000 1.303 +++ borders.c 30 Dec 2007 21:03:57 -0000 1.304 @@ -1196,56 +1196,59 @@ i1 = ConfigParseline1(s, s2, NULL, NULL); i2 = atoi(s2); - if (i2 == CONFIG_OPEN) + switch (i1) { - err = BorderPartLoad(fs, i1, b); - if (err) - break; - } - else - { - switch (i1) + case CONFIG_CLOSE: + goto done; + case CONFIG_CLASSNAME: + case BORDER_NAME: + if (BorderFind(s2)) { - case CONFIG_CLOSE: + SkipTillEnd(fs); goto done; - case BORDER_INIT: - break; - case CONFIG_CLASSNAME: - case BORDER_NAME: - if (BorderFind(s2)) - { - SkipTillEnd(fs); - goto done; - } - b = BorderCreate(s2); - break; - case BORDER_GROUP_NAME: - b->group_border_name = Estrdup(s2); - break; - case BORDER_LEFT: - b->border.left = i2; - break; - case BORDER_RIGHT: - b->border.right = i2; - break; - case BORDER_TOP: - b->border.top = i2; - break; - case BORDER_BOTTOM: - b->border.bottom = i2; - break; - case SHADEDIR: - b->shadedir = i2; - break; - case BORDER_CHANGES_SHAPE: - b->changes_shape = i2; - break; - case CONFIG_ACTIONCLASS: - b->aclass = ActionclassFind(s2); - break; - default: - break; } + b = BorderCreate(s2); + continue; + } + + if (!b) + break; + + switch (i1) + { + default: + break; + case BORDER_INIT: + if (i2 != CONFIG_OPEN) + break; + err = BorderPartLoad(fs, i1, b); + if (err) + break; + break; + case BORDER_GROUP_NAME: + b->group_border_name = Estrdup(s2); + break; + case BORDER_LEFT: + b->border.left = i2; + break; + case BORDER_RIGHT: + b->border.right = i2; + break; + case BORDER_TOP: + b->border.top = i2; + break; + case BORDER_BOTTOM: + b->border.bottom = i2; + break; + case SHADEDIR: + b->shadedir = i2; + break; + case BORDER_CHANGES_SHAPE: + b->changes_shape = i2; + break; + case CONFIG_ACTIONCLASS: + b->aclass = ActionclassFind(s2); + break; } } err = -1; ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs