Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Ignore all tarballs
[simgrid.git] / examples / gras_stub_generator
index 9830a96..d908888 100755 (executable)
@@ -9,8 +9,9 @@
 # under the terms of the license (GNU LGPL) which comes with this package.
   
 use strict;
-use warnings;
-
+eval qq{
+  use warnings;
+}; # warnings not defined in 5.00503/sun4-solaris
 
 sub usage {
     my ($msg)=@_;
@@ -60,12 +61,18 @@ print OUT "\n$warn\n";
 foreach (keys %process) {
     print OUT<<EOF
 int launch_$_(int argc, char **argv) {
-
+  char **myargv=argv;
+  int i;
+    
   if (gras_log) {
-      argv=realloc(argv,++argc * sizeof(char**));
-      argv[argc-1] = gras_log;
+    myargv=malloc((argc+1) * sizeof(char**));
+    for (i=0; i<argc; i++)
+      myargv[i] = argv[i];
+    myargv[argc++] = gras_log;
   }
   $_(argc,argv);
+  if (myargv != argv)
+    free(myargv);
   return 0;
 }