[BACK]Return to extract_func.c CVS log [TXT][DIR] Up to [local] / OpenXM / src / asir-doc

Diff for /OpenXM/src/asir-doc/extract_func.c between version 1.2 and 1.4

version 1.2, 2000/01/20 03:26:22 version 1.4, 2006/02/12 08:55:26
Line 1 
Line 1 
 /* $OpenXM: OpenXM/src/asir-doc/extract_func.c,v 1.1.1.1 1999/12/08 05:47:43 noro Exp $ */  /* $OpenXM: OpenXM/src/asir-doc/extract_func.c,v 1.3 2005/02/09 03:25:50 noro Exp $ */
   
 #include <stdio.h>  #include <stdio.h>
 #include <string.h>  #include <string.h>
Line 49  char **argv;
Line 49  char **argv;
                         if ( i >= 3 && buf1[i] == '\n' ) {                          if ( i >= 3 && buf1[i] == '\n' ) {
                                 fputs(buf,stderr);                                  fputs(buf,stderr);
                                 strcpy(fn,name[0]);                                  strcpy(fn,name[0]);
                                   create_dir(fn);
                                 fp = fopen(fn,"w");                                  fp = fopen(fn,"w");
                                 for ( j = 1; name[j]; j++ )                                  for ( j = 1; name[j]; j++ )
                                         symlink(fn,name[j]);                                          symlink(fn,name[j]);
Line 79  char **argv;
Line 80  char **argv;
         }          }
 }  }
   
   int create_dir(char *fname)
   {
           char *p;
   
           p = fname;
           while ( *p && (p = strchr(p,'/')) ) {
                   *p = 0;
                   mkdir(fname,0755);
                   *p = '/';
                   p++;
           }
   
   }
   
 int fname(buf,name)  int fname(buf,name)
 char *buf;  char *buf;
 char **name;  char **name;
 {  {
         int i,len;          int i,len;
         char *quote,*bquote,*comma;          char *quote,*bquote,*comma,*space,*p;
   
         /* XXX */          if ( *buf != '`' ) {
         if ( *buf != '`' )                  /* skip X.X.X if exists */
                 return 0;                  space = index(buf,' ');
                   if ( !space ) return 0;
                   for ( p = buf; p < space; p++ )
                           if ( !isdigit(*p) && *p != '.' ) return 0;
                   buf = space+1;
           }
         i = 0;          i = 0;
         while ( 1 ) {          while ( 1 ) {
                 /* search a back quote */                  /* search a back quote */

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.4

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>