#include #include "ostool.h" #include "commun.h" #include /* Extrait les composantes d'un path dans un tableau Le client est reponsable de d‚sallouer les ‚l‚ments du tableau. Retourne le nombre d'‚l‚ment plac‚ dans le tableau. */ export int path_str2tb (const char *path, char *tb[]) { int ret = 0; char tmp[MAXSIZ_PATH]; char *pt = tmp; char *debut = tmp; strcpy (tmp,path); while (*pt != '\0'){ if (path_issep(*pt)){ char *p; *pt++ = '\0'; p = tb[ret] = strdup_err (debut); debut = pt; if (p == NULL) break; ret++; }else{ pt++; } } if (pt > debut){ char *p = tb[ret] = strdup_err (debut); if (p != NULL) ret++; } return ret; }