リビジョン | ba5a3597601d82283f6b6cf6604bd72061723641 (tree) |
---|---|
日時 | 2021-06-23 01:39:29 |
作者 | Fojtik |
コミッター | Fojtik |
Emit error and let building process to hang when problem with codepage occurs.
@@ -432,39 +432,40 @@ | ||
432 | 432 | WP2LaTeX.erase(); |
433 | 433 | |
434 | 434 | ForgeFname(FileName, "internal"); |
435 | - LoadCodePage(FileName(), internal); | |
436 | - LoadCodePage("unicode", unicode,0); | |
437 | - | |
438 | - LoadCodePage("cp852",cp852,0); | |
439 | - LoadCodePage("cp1250",cp1250,0); | |
440 | - LoadCodePage("cp1251",cp1251,0); | |
441 | - LoadCodePage("cp1252",cp1252,0); | |
442 | - LoadCodePage("cp1253",cp1253,0); | |
443 | - LoadCodePage("kam",cpkam,0); | |
435 | + if(!LoadCodePage(FileName(), internal)) return -1; | |
436 | + if(!LoadCodePage("unicode", unicode,0)) return -2; | |
444 | 437 | |
445 | - LoadCodePage("wp6",cpwp6,0); | |
446 | - LoadCodePage("wp5",cpwp5,0); | |
447 | - LoadCodePage("wp5_cz",cpwp5_cz,0); | |
448 | - LoadCodePage("wp4a",cpwp4a,0); | |
449 | - LoadCodePage("is8859_1",iso_8859_1,0); | |
450 | - LoadCodePage("is8859_2",iso_8859_2,0); | |
451 | - LoadCodePage("is8859_3",iso_8859_3,0); | |
452 | - LoadCodePage("is8859_4",iso_8859_4,0); | |
453 | - if(iso_8859_1.name) {free(iso_8859_1.name);iso_8859_1.name=strdup("iso_8859_1");} | |
454 | - if(iso_8859_2.name) {free(iso_8859_2.name);iso_8859_2.name=strdup("iso_8859_2");} | |
455 | - if(iso_8859_3.name) {free(iso_8859_3.name);iso_8859_3.name=strdup("iso_8859_3");} | |
456 | - if(iso_8859_4.name) {free(iso_8859_4.name);iso_8859_4.name=strdup("iso_8859_4");} | |
438 | + // WP speciffic code pages. | |
439 | + if(!LoadCodePage("wp6",cpwp6,0)) return -9; | |
440 | + if(!LoadCodePage("wp5",cpwp5,0)) return -10; | |
441 | + if(!LoadCodePage("wp5_cz",cpwp5_cz,0)) return -11; | |
442 | + if(!LoadCodePage("wp4a",cpwp4a,0)) return -12; | |
457 | 443 | |
444 | + LoadCodePage("mtef2",mtef2,0); | |
445 | + LoadCodePage("symbol",symbol,0); | |
446 | + LoadCodePage("mac_roma",MAC_ROMAN,0); | |
447 | + if(MAC_ROMAN.name){free(MAC_ROMAN.name);MAC_ROMAN.name=strdup("MacRoman");} | |
448 | + | |
449 | + if(!LoadCodePage("cp852",cp852,0)) return -3; | |
450 | + if(!LoadCodePage("cp1250",cp1250,0)) return -4; | |
451 | + if(!LoadCodePage("cp1251",cp1251,0)) return -5; | |
452 | + if(!LoadCodePage("cp1252",cp1252,0)) return -6; | |
453 | + if(!LoadCodePage("cp1253",cp1253,0)) return -7; | |
454 | + if(!LoadCodePage("cp1276",cp1276,0)) return -7; | |
455 | + | |
456 | + if(!LoadCodePage("kam",cpkam,0)) return -8; | |
458 | 457 | LoadCodePage("koi8cs",koi8cs,0); |
459 | 458 | LoadCodePage("koi8_r",koi8r,0); |
460 | 459 | |
461 | - LoadCodePage("mtef2",mtef2,0); | |
462 | - LoadCodePage("symbol",symbol,0); | |
460 | + LoadCodePage("is8859_1",iso_8859_1,0); | |
461 | + if(iso_8859_1.name) {free(iso_8859_1.name);iso_8859_1.name=strdup("iso_8859_1");} | |
462 | + LoadCodePage("is8859_2",iso_8859_2,0); | |
463 | + if(iso_8859_2.name) {free(iso_8859_2.name);iso_8859_2.name=strdup("iso_8859_2");} | |
464 | + LoadCodePage("is8859_3",iso_8859_3,0); | |
465 | + if(iso_8859_3.name) {free(iso_8859_3.name);iso_8859_3.name=strdup("iso_8859_3");} | |
466 | + LoadCodePage("is8859_4",iso_8859_4,0); | |
467 | + if(iso_8859_4.name) {free(iso_8859_4.name);iso_8859_4.name=strdup("iso_8859_4");} | |
463 | 468 | |
464 | - LoadCodePage("mac_roma",MAC_ROMAN,0); | |
465 | - if(MAC_ROMAN.name){free(MAC_ROMAN.name);MAC_ROMAN.name=strdup("MacRoman");} | |
466 | - | |
467 | - LoadCodePage("cp1276",cp1276,0); | |
468 | 469 | |
469 | 470 | //if(heapcheck()<=0) |
470 | 471 | // asm int 3; |
@@ -233,7 +233,7 @@ | ||
233 | 233 | } |
234 | 234 | |
235 | 235 | |
236 | -void LoadCodePage(string cpfilename, codepage & cp, int ShowAll=1) | |
236 | +bool LoadCodePage(string cpfilename, codepage & cp, int ShowAll=1) | |
237 | 237 | { |
238 | 238 | FILE *Fcp; |
239 | 239 |
@@ -245,13 +245,14 @@ | ||
245 | 245 | if((Fcp=fopen(cpfilename,"r"))==NULL ) |
246 | 246 | { |
247 | 247 | printf("\nError: cannot open file:%s!!!",cpfilename()); |
248 | - return; | |
248 | + return false; | |
249 | 249 | } |
250 | 250 | |
251 | 251 | while(!feof(Fcp)) |
252 | 252 | ReadChar(Fcp,cp); |
253 | 253 | |
254 | 254 | fclose(Fcp); |
255 | + return true; | |
255 | 256 | } |
256 | 257 | |
257 | 258 |