dynamic allocation of cargs
authorken <ken@mihrtec.com>
Fri, 20 Jan 2017 03:29:24 +0000 (19:29 -0800)
committerken <ken@mihrtec.com>
Fri, 20 Jan 2017 03:29:24 +0000 (19:29 -0800)
src/apc.c

index df4810e..4e71155 100644 (file)
--- a/src/apc.c
+++ b/src/apc.c
@@ -23,7 +23,7 @@
 #include "ir.h"
 
 #define DEFAULT_PAGESIZE 4096
-const char* cargs['Z'] = {0};
+const char** cargs;
 long  sys_pagesize;
   
 int main(int, char*[]);
@@ -65,6 +65,7 @@ int main
 #define DONE   -1
 #define SCANPATH (cargs['d'] ? cargs['d'] : "./")
 { int   opt;
+  cargs = (const char**) malloc('Z');
  getopt:
   switch (opt = getopt(argc, argv, OPTS))
   { case 'd' :
@@ -88,38 +89,17 @@ int main
     sys_pagesize = DEFAULT_PAGESIZE;
   if (ir_init())
     { perror("init");
+      free(cargs);
       exit(EXIT_FAILURE);
     }
-#if 0
   if (scanner_scanpath(SCANPATH))
     { perror("scanner");
+      free(cargs);
       exit(EXIT_FAILURE);
     }
-#endif
-  ir_class class;
-  ir_set   set;
-  int i, j;
-  char wordbuf[0xFFF];
-  for (class = ir_class_root(), i = 0, j = 0; i < 100; i++)
-    { sprintf(wordbuf,"Class%i",i);
-      class = ir_class_addchild(class,(uint8_t*)wordbuf);
-      sprintf(wordbuf,"c%i-s%i",i,j++);
-      set = ir_class_addset(class, (uint8_t*)wordbuf);
-      sprintf(wordbuf,"c%i-s%i",i,j++);
-      ir_class_addset(class, (uint8_t*)wordbuf);
-      sprintf(wordbuf,"c%i-s%i",i,j++);
-      ir_class_addset(class, (uint8_t*)wordbuf);
-      sprintf(wordbuf,"c%i-sc%i",i,j=0);
-      set = ir_set_addchild(set, (uint8_t*)wordbuf);
-      sprintf(wordbuf,"c%i-sc%i",i,++j);
-      ir_set_addchild(set, (uint8_t*)wordbuf);
-      sprintf(wordbuf,"c%i-sc%i",i,++j);
-      set = ir_set_addchild(set, (uint8_t*)wordbuf);
-      sprintf(wordbuf,"c%i-sb%i",i,j=0);
-      ir_set_addchild(set, (uint8_t*)wordbuf);
-    }
   ir_test();
   ir_linker();
   ir_condenser();
+  free(cargs);
   exit(EXIT_SUCCESS);
 }