I'd like to clean up string_init, because it currently backfires (segfaults) on Windows if parrot is installed (empty DEFAULT_ICU_DATA_DIR ...).
Could someone please tell me what string_init is supposed to do, where it _should_ look for the ICU data directory (if at all)? ... build_path = data_dir = const_cast(DEFAULT_ICU_DATA_DIR); /* * if the installed --prefix directory exists then use it */ prefix = Parrot_get_runtime_prefix(interpreter, NULL); if (prefix) { p = strstr(build_path, "blib"); /* .../blib/lib/... */ assert(p); --p; /* slash or backslash */ data_dir = mem_sys_allocate(strlen(prefix) + strlen(p) + 1); strcpy(data_dir, prefix); strcat(data_dir, p); free_data_dir = 1; } ... Ron