static MonoBundledAssembly **bundled;
-int mono_main (int argc, char* argv[]);
+#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <zlib.h>
memset (&stream, 0, sizeof (z_stream));
stream.next_in = (Byte *) compr;
stream.avail_in = (uInt) compr_len;
- err = inflateInit (&stream);
+
+ // http://www.zlib.net/manual.html
+ err = inflateInit2 (&stream, 16+MAX_WBITS);
if (err != Z_OK)
return 1;
return 0;
}
-int main (int argc, char* argv[])
+void mono_mkbundle_init ()
{
- char **newargs = (char **) malloc (sizeof (char *) * (argc + 2));
- int i;
CompressedAssembly **ptr;
MonoBundledAssembly **bundled_ptr;
Bytef *buffer;
int nbundles;
- newargs [0] = argv [0];
- newargs [1] = image_name;
- for (i = 1; i < argc; i++)
- newargs [i+1] = argv [i];
- newargs [++i] = NULL;
-
- if (config_dir != NULL && getenv ("MONO_CFG_DIR") == NULL)
- mono_set_dirs (getenv ("MONO_PATH"), config_dir);
-
install_dll_config_files ();
ptr = (CompressedAssembly **) compressed;
buffer = (Bytef *) malloc (real_size);
result = my_inflate ((*ptr)->assembly.data, zsize, buffer, real_size);
if (result != 0) {
- fprintf (stderr, "Error %d decompresing data for %s\n", result, (*ptr)->assembly.name);
+ fprintf (stderr, "mkbundle: Error %d decompressing data for %s\n", result, (*ptr)->assembly.name);
exit (1);
}
(*ptr)->assembly.data = buffer;
}
*bundled_ptr = NULL;
mono_register_bundled_assemblies((const MonoBundledAssembly **) bundled);
- return mono_main (argc+1, newargs);
}