Enlightenment CVS committal Author : kwo Project : e16 Module : e
Dir : e16/e/src Modified Files: E.h actions.c comms.c icccm.c memory.c menus-misc.c text.c theme.c Log Message: Add string splitting function. Rename string list functions. =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/E.h,v retrieving revision 1.468 retrieving revision 1.469 diff -u -3 -r1.468 -r1.469 --- E.h 11 Jul 2005 18:02:45 -0000 1.468 +++ E.h 16 Jul 2005 15:53:52 -0000 1.469 @@ -1999,12 +1999,13 @@ #endif char *Estrdupcat2(char *ss, const char *s1, const char *s2); -char **EstrlistDup(char **lst, int num); -void EstrlistFree(char **lst, int num); -char *EstrlistJoin(char **lst, int num); -char *EstrlistEncodeEscaped(char *buf, int len, char **lst, - int num); -char **EstrlistDecodeEscaped(const char *str, int *pnum); +char **StrlistDup(char **lst, int num); +void StrlistFree(char **lst, int num); +char *StrlistJoin(char **lst, int num); +char *StrlistEncodeEscaped(char *buf, int len, char **lst, + int num); +char **StrlistDecodeEscaped(const char *str, int *pnum); +char **StrlistFromString(const char *str, int delim, int *num); /* menus.c */ int MenuStyleConfigLoad(FILE * fs); =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/actions.c,v retrieving revision 1.188 retrieving revision 1.189 diff -u -3 -r1.188 -r1.189 --- actions.c 19 Mar 2005 16:39:57 -0000 1.188 +++ actions.c 16 Jul 2005 15:53:53 -0000 1.189 @@ -183,9 +183,9 @@ int argc; char **argv; - argv = EstrlistDecodeEscaped(cmd, &argc); + argv = StrlistDecodeEscaped(cmd, &argc); Espawn(argc, argv); - EstrlistFree(argv, argc); + StrlistFree(argv, argc); } void =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/comms.c,v retrieving revision 1.70 retrieving revision 1.71 diff -u -3 -r1.70 -r1.71 --- comms.c 30 Jun 2005 12:50:35 -0000 1.70 +++ comms.c 16 Jul 2005 15:53:53 -0000 1.71 @@ -368,5 +368,5 @@ if (c) CommsSend(c, s); } - EstrlistFree(l, num); + StrlistFree(l, num); } =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/icccm.c,v retrieving revision 1.103 retrieving revision 1.104 diff -u -3 -r1.103 -r1.104 --- icccm.c 16 Jul 2005 15:40:50 -0000 1.103 +++ icccm.c 16 Jul 2005 15:53:53 -0000 1.104 @@ -557,8 +557,8 @@ &argv); ewin->icccm.wm_command = - Estrdup(EstrlistEncodeEscaped(s, sizeof(s), argv, argc)); - EstrlistFree(argv, argc); + Estrdup(StrlistEncodeEscaped(s, sizeof(s), argv, argc)); + StrlistFree(argv, argc); } if (atom_change == 0 || atom_change == ECORE_X_ATOM_WM_CLIENT_MACHINE) =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/memory.c,v retrieving revision 1.45 retrieving revision 1.46 diff -u -3 -r1.45 -r1.46 --- memory.c 19 Mar 2005 16:40:06 -0000 1.45 +++ memory.c 16 Jul 2005 15:53:53 -0000 1.46 @@ -78,7 +78,7 @@ } char ** -EstrlistDup(char **lst, int num) +StrlistDup(char **lst, int num) { char **ss; int i; @@ -95,7 +95,7 @@ } void -EstrlistFree(char **lst, int num) +StrlistFree(char **lst, int num) { if (!lst) return; @@ -107,7 +107,7 @@ #if 0 /* FIXME - Remove? */ char * -EstrlistJoin(char **lst, int num) +StrlistJoin(char **lst, int num) { int i, size; char *s; @@ -133,7 +133,7 @@ #endif char * -EstrlistEncodeEscaped(char *buf, int len, char **lst, int num) +StrlistEncodeEscaped(char *buf, int len, char **lst, int num) { int i, j, ch; char *s, *p; @@ -175,7 +175,7 @@ } char ** -EstrlistDecodeEscaped(const char *str, int *pnum) +StrlistDecodeEscaped(const char *str, int *pnum) { int num, len; const char *s, *p; @@ -237,6 +237,40 @@ return lst; } +char ** +StrlistFromString(const char *str, int delim, int *num) +{ + const char *s, *p; + char **lst; + int n, len; + + lst = NULL; + n = 0; + for (s = str; s; s = p) + { + p = strchr(s, delim); + if (p) + { + len = p - s; + p++; + } + else + { + len = strlen(s); + } + if (len <= 0) + continue; + + lst = Erealloc(lst, (n + 2) * sizeof(char *)); + lst[n++] = Estrndup(s, len); + } + + if (lst) + lst[n] = NULL; + *num = n; + return lst; +} + #if !USE_LIBC_SETENV int Esetenv(const char *name, const char *value, int overwrite __UNUSED__) =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/menus-misc.c,v retrieving revision 1.13 retrieving revision 1.14 diff -u -3 -r1.13 -r1.14 --- menus-misc.c 10 Jul 2005 08:31:13 -0000 1.13 +++ menus-misc.c 16 Jul 2005 15:53:53 -0000 1.14 @@ -223,7 +223,7 @@ if (p) ProgressbarDestroy(p); if (list) - EstrlistFree(list, num); + StrlistFree(list, num); return m; } @@ -512,7 +512,7 @@ } } if (list) - EstrlistFree(list, num); + StrlistFree(list, num); return m; } @@ -539,7 +539,7 @@ MenuAddItem(m, mi); } if (lst) - EstrlistFree(lst, i); + StrlistFree(lst, i); return m; } =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/text.c,v retrieving revision 1.54 retrieving revision 1.55 diff -u -3 -r1.54 -r1.55 --- text.c 29 May 2005 09:34:57 -0000 1.54 +++ text.c 16 Jul 2005 15:53:53 -0000 1.55 @@ -301,7 +301,7 @@ *width = wid; } } - EstrlistFree(lines, num_lines); + StrlistFree(lines, num_lines); } void @@ -766,7 +766,7 @@ yy += ts->xfont->ascent + ts->xfont->descent; } } - EstrlistFree(lines, num_lines); + StrlistFree(lines, num_lines); } void =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/theme.c,v retrieving revision 1.48 retrieving revision 1.49 diff -u -3 -r1.48 -r1.49 --- theme.c 12 May 2005 16:50:52 -0000 1.48 +++ theme.c 16 Jul 2005 15:53:53 -0000 1.49 @@ -147,7 +147,7 @@ (*list)[(*count) - 1] = Estrdup(ss); } } - EstrlistFree(str, num); + StrlistFree(str, num); return def; } @@ -249,7 +249,7 @@ break; } if (lst) - EstrlistFree(lst, num); + StrlistFree(lst, num); if (path) return ThemeGetPath(path); @@ -461,7 +461,7 @@ for (i = 0; i < num; i++) IpcPrintf("%s\n", lst[i]); if (lst) - EstrlistFree(lst, num); + StrlistFree(lst, num); } else if (!strcmp(cmd, "use")) { ------------------------------------------------------- SF.Net email is sponsored by: Discover Easy Linux Migration Strategies from IBM. Find simple to follow Roadmaps, straightforward articles, informative Webcasts and more! Get everything you need to get up to speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs