ICU-2338 These changes are causing the tests to fail and crash.

Undo them for now until a real fix is created.

X-SVN-Rev: 12992
This commit is contained in:
George Rhoten 2003-08-30 19:45:45 +00:00
parent db5f63663f
commit 2eb2e50e9a

View file

@ -52,22 +52,11 @@ static UOption options[]={
{ "rules", NULL, NULL, NULL, 'r', UOPT_REQUIRES_ARG, 0 }, /* 3 */
{ "out", NULL, NULL, NULL, 'o', UOPT_REQUIRES_ARG, 0 }, /* 4 */
UOPTION_ICUDATADIR, /* 5 */
UOPTION_DESTDIR, /* 6 */
UOPTION_COPYRIGHT, /* 7 */
UOPTION_DESTDIR /* 6 */
};
void usageAndDie(int retCode) {
printf("Usage: genbrk [-v] [-options] -r rule-file -o output-file\n", progName);
printf("\tRead in break iteration rules text and write out the binary data\n"
"options:\n"
"\t-h or -? or --help this usage text\n"
"\t-V or --version show a version message\n"
"\t-c or --copyright include a copyright notice\n"
"\t-v or --verbose turn on verbose output\n"
"\t-i or --icudatadir directory for locating any needed intermediate data files,\n"
"\t followed by path, defaults to %s\n",
"\t-d or --destdir destination directory, followed by the path\n",
u_getDataDirectory());
printf("Usage: %s [-v] -r rule-file -o output-file\n", progName);
exit (retCode);
}
@ -124,7 +113,8 @@ int main(int argc, char **argv) {
const char *ruleFileName;
const char *outFileName;
const char *outDir = NULL;
const char *copyright = NULL;
char *outFullFileName;
int32_t outFullFileNameLen;
//
// Pick up and check the command line arguments,
@ -150,6 +140,7 @@ int main(int argc, char **argv) {
}
ruleFileName = options[3].value;
outFileName = options[4].value;
outFullFileNameLen = strlen(outFileName);
if (options[5].doesOccur) {
u_setDataDirectory(options[5].value);
@ -167,10 +158,15 @@ int main(int argc, char **argv) {
/* Combine the directory with the file name */
if(options[6].doesOccur) {
outDir = options[6].value;
outFullFileNameLen += strlen(outDir);
}
if (options[7].doesOccur) {
copyright = U_COPYRIGHT_STRING;
outFullFileName = (char*)malloc(outFullFileNameLen + 2);
outFullFileName[0] = 0;
if (outDir) {
strcpy(outFullFileName, outDir);
strcat(outFullFileName, U_FILE_SEP_STRING);
}
strcat(outFullFileName, outFileName);
#if UCONFIG_NO_BREAK_ITERATION
@ -323,30 +319,28 @@ int main(int argc, char **argv) {
// Create the output file
//
size_t bytesWritten;
UNewDataMemory *pData;
pData = udata_create(outDir, NULL, outFileName, &(dh.info), copyright, &status);
if(U_FAILURE(status)) {
fprintf(stderr, "genbrk: Could not open output file \"%s\", \"%s\"\n",
outFileName, u_errorName(status));
exit(status);
}
// Write the data itself.
udata_writeBlock(pData, outData, outDataSize);
// finish up
bytesWritten = udata_finish(pData, &status);
if(U_FAILURE(status)) {
fprintf(stderr, "genbrk: error %d writing the output file\n", status);
exit(status);
}
if (bytesWritten != outDataSize) {
fprintf(stderr, "Error writing to output file \"%s\"\n", outFileName);
file = fopen(outFullFileName, "wb");
if (file == 0) {
fprintf(stderr, "Could not open output file \"%s\"\n", outFullFileName);
exit(-1);
}
bytesWritten = fwrite(&dh, 1, sizeof(DataHeader), file);
//
// Write the data itself.
//
bytesWritten = fwrite(outData, 1, outDataSize, file);
if (bytesWritten != outDataSize) {
fprintf(stderr, "Error writing to output file \"%s\"\n", outFullFileName);
exit(-1);
}
fclose(file);
delete bi;
delete[] ruleSourceU;
delete[] ruleBufferC;
free(outFullFileName);
u_cleanup();
@ -354,4 +348,4 @@ int main(int argc, char **argv) {
return 0;
#endif /* #if !UCONFIG_NO_BREAK_ITERATION */
}
}