/[graveman]/graveman/current/src/tools.c
ViewVC logotype

Diff of /graveman/current/src/tools.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.7 by scresto, Tue Feb 8 02:32:57 2005 UTC revision 1.8 by scresto, Thu Feb 10 23:12:31 2005 UTC
# Line 330  void exit_prog(gint Apid, GError **Aerro Line 330  void exit_prog(gint Apid, GError **Aerro
330    }    }
331  }  }
332    
333    /* creation de tous les repertoires necessaires */
334    gint sc_mkdir(const gchar *Aname, mode_t Amode) {
335      gchar **Llist = g_strsplit(Aname, G_DIR_SEPARATOR_S, 0);
336      gchar *Ldir = NULL, *Ltmp = NULL;
337      gint Lstatus = TRUE;
338      gint i;
339    
340      for (i=0; Llist[i]; i++) {
341        if (!*Llist[i]) continue;
342    
343        if (Ldir) {
344          Ltmp = g_strconcat(Ldir, "/", Llist[i], NULL);
345          g_free(Ldir);
346        } else {
347          Ltmp = g_strconcat("/", Llist[i], NULL);
348        }
349        Ldir = Ltmp;
350      
351        if (g_file_test(Ldir, G_FILE_TEST_IS_DIR)) continue;
352    
353        if (g_file_test(Ldir, G_FILE_TEST_EXISTS)) {
354          Lstatus = FALSE;
355          break;
356        }
357    
358        if (mkdir(Ldir, Amode)!=0) {
359          Lstatus = FALSE;
360          break;
361        }
362      }
363      
364      g_free(Ldir);
365      g_strfreev(Llist);
366    
367      return Lstatus;
368    }
369    
370  /*  /*
371   * vim:et:ts=8:sts=2:sw=2   * vim:et:ts=8:sts=2:sw=2

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.8

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26