-----BEGIN PGP SIGNATURE----- iQJGBAABCgAwFiEE17ttnf0k1mk3Hh9j2/yJx+jh20MFAmCRgnsSHG1zY2xyaGRA Z21haWwuY29tAAoJENv8icfo4dtDgUAQAIdSkajPSJi+fjW9ZxgYW5wjCufd9CXU xAAR4WfIFzxHvwkXN0H8J7vICgczy3bfYABXpiSbfQO2t0KacKw9Mq/Z92PusPho 9qWfFIREasdwgnk347IHW79Pzh6K45D32VIun1uOWvH5iJSlJO7p8S8PEHjz0my3 W+YVONy4gJnvqLPwdZZdXhz+UxjtVl0qWicbNXZOmZxwW+BHVmr+Ew1QYv4sVNzi sVHhOlaxuv/sVh/9w6dLU39lz0HTicZkJuOvxPRVIxbbCpAyuSUIry+JHdzc7zWG d7ql+VSov8hYYB2xbe+9j75b44zGpJH41J+eZfbPBEdZ0H10oSmsS6iWDsXcdyFE FBf6/qW4yDFrpLstN0f0sCgjo1Jn421+YAM2NQhrIPn2brr6mp/6SMV/nw+id4ch BLNW2r6gesrk3P5iveeijzI006K50n1Bq0Z/3j+PsmK3+/gIKtSqzoU857QkwRdB rWlTcVOkJwrmfDV39GjL9/zFcrIq1N2IvKcLOllPIypU3Kwe58x/ePzZFQ0noHhG BcfSshoUW51Xk1r7Mic+BGBem/iNr4tiIcylDW2NXkVpcq5XORHr9+RKRRj+B2sg 5XPzKSr8Fv8pX/ZllCMfFQQt7z6CXhvdsVhZSSDjz52XmETbKMLhDBGCLFjH5rwO /30WRwlsWx3r =hRU7 -----END PGP SIGNATURE----- Merge tag 'de5e36b4ad69c4acfdd728b2ca3e0e472d91afd1' ucd-tools 11.0.0.1master
@@ -7,6 +7,10 @@ These are eSpeak NG specific modifications to the `ucd-tools` project: | |||
* `data/espeak-ng` data files for eSpeak NG extended data. | |||
* espeak-ng PropList property lookup as part of the `ucd_property` API. | |||
## 11.0.0.1 - 2021-05-04 | |||
* Fix -fsanitize=address issues in case.c. | |||
## 11.0.0 - 2018-07-08 | |||
* Make the ispunct ctype compatibility implementation conformant. |
@@ -1,8 +1,29 @@ | |||
Unicode Data Files include all data files under the directories | |||
http://www.unicode.org/Public/, http://www.unicode.org/reports/, | |||
http://www.unicode.org/cldr/data/, http://source.icu-project.org/repos/icu/, and | |||
http://www.unicode.org/utility/trac/browser/. | |||
Unicode Data Files do not include PDF online code charts under the | |||
directory http://www.unicode.org/Public/. | |||
Software includes any source code published in the Unicode Standard | |||
or under the directories | |||
http://www.unicode.org/Public/, http://www.unicode.org/reports/, | |||
http://www.unicode.org/cldr/data/, http://source.icu-project.org/repos/icu/, and | |||
http://www.unicode.org/utility/trac/browser/. | |||
NOTICE TO USER: Carefully read the following legal agreement. | |||
BY DOWNLOADING, INSTALLING, COPYING OR OTHERWISE USING UNICODE INC.'S | |||
DATA FILES ("DATA FILES"), AND/OR SOFTWARE ("SOFTWARE"), | |||
YOU UNEQUIVOCALLY ACCEPT, AND AGREE TO BE BOUND BY, ALL OF THE | |||
TERMS AND CONDITIONS OF THIS AGREEMENT. | |||
IF YOU DO NOT AGREE, DO NOT DOWNLOAD, INSTALL, COPY, DISTRIBUTE OR USE | |||
THE DATA FILES OR SOFTWARE. | |||
COPYRIGHT AND PERMISSION NOTICE | |||
Copyright © 1991-2014 Unicode, Inc. All rights reserved. | |||
Distributed under the Terms of Use in | |||
http://www.unicode.org/copyright.html. | |||
Copyright © 1991-2018 Unicode, Inc. All rights reserved. | |||
Distributed under the Terms of Use in http://www.unicode.org/copyright.html. | |||
Permission is hereby granted, free of charge, to any person obtaining | |||
a copy of the Unicode data files and any associated documentation | |||
@@ -11,14 +32,11 @@ a copy of the Unicode data files and any associated documentation | |||
without restriction, including without limitation the rights to use, | |||
copy, modify, merge, publish, distribute, and/or sell copies of | |||
the Data Files or Software, and to permit persons to whom the Data Files | |||
or Software are furnished to do so, provided that | |||
(a) this copyright and permission notice appear with all copies | |||
of the Data Files or Software, | |||
(b) this copyright and permission notice appear in associated | |||
documentation, and | |||
(c) there is clear notice in each modified Data File or in the Software | |||
as well as in the documentation associated with the Data File(s) or | |||
Software that the data or software has been modified. | |||
or Software are furnished to do so, provided that either | |||
(a) this copyright and permission notice appear with all copies | |||
of the Data Files or Software, or | |||
(b) this copyright and permission notice appear in associated | |||
Documentation. | |||
THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF | |||
ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE |
@@ -1,6 +1,6 @@ | |||
/* Unicode Case Conversion | |||
* | |||
* Copyright (C) 2012-2018 Reece H. Dunn | |||
* Copyright (C) 2012-2018, 2021 Reece H. Dunn | |||
* | |||
* This file is part of ucd-tools. | |||
* | |||
@@ -19,7 +19,7 @@ | |||
*/ | |||
/* NOTE: This file is automatically generated from the UnicodeData.txt file in | |||
* the Unicode Character database by the ucd-tools/tools/categories.py script. | |||
* the Unicode Character database by the ucd-tools/tools/case.py script. | |||
*/ | |||
#include "ucd/ucd.h" | |||
@@ -2822,7 +2822,7 @@ static const struct case_conversion_entry case_conversion_data[] = | |||
codepoint_t ucd_toupper(codepoint_t c) | |||
{ | |||
int begin = 0; | |||
int end = sizeof(case_conversion_data)/sizeof(case_conversion_data[0]); | |||
int end = sizeof(case_conversion_data)/sizeof(case_conversion_data[0]) - 1; | |||
while (begin <= end) | |||
{ | |||
int pos = (begin + end) / 2; | |||
@@ -2840,7 +2840,7 @@ codepoint_t ucd_toupper(codepoint_t c) | |||
codepoint_t ucd_tolower(codepoint_t c) | |||
{ | |||
int begin = 0; | |||
int end = sizeof(case_conversion_data)/sizeof(case_conversion_data[0]); | |||
int end = sizeof(case_conversion_data)/sizeof(case_conversion_data[0]) - 1; | |||
while (begin <= end) | |||
{ | |||
int pos = (begin + end) / 2; | |||
@@ -2858,7 +2858,7 @@ codepoint_t ucd_tolower(codepoint_t c) | |||
codepoint_t ucd_totitle(codepoint_t c) | |||
{ | |||
int begin = 0; | |||
int end = sizeof(case_conversion_data)/sizeof(case_conversion_data[0]); | |||
int end = sizeof(case_conversion_data)/sizeof(case_conversion_data[0]) - 1; | |||
while (begin <= end) | |||
{ | |||
int pos = (begin + end) / 2; |
@@ -1,6 +1,6 @@ | |||
#!/usr/bin/python | |||
# Copyright (C) 2012-2018 Reece H. Dunn | |||
# Copyright (C) 2012-2018, 2021 Reece H. Dunn | |||
# | |||
# This file is part of ucd-tools. | |||
# | |||
@@ -33,7 +33,7 @@ for data in ucd.parse_ucd_data(ucd_rootdir, 'UnicodeData'): | |||
if __name__ == '__main__': | |||
sys.stdout.write("""/* Unicode Case Conversion | |||
* | |||
* Copyright (C) 2012-2018 Reece H. Dunn | |||
* Copyright (C) 2012-2018, 2021 Reece H. Dunn | |||
* | |||
* This file is part of ucd-tools. | |||
* | |||
@@ -52,7 +52,7 @@ if __name__ == '__main__': | |||
*/ | |||
/* NOTE: This file is automatically generated from the UnicodeData.txt file in | |||
* the Unicode Character database by the ucd-tools/tools/categories.py script. | |||
* the Unicode Character database by the ucd-tools/tools/case.py script. | |||
*/ | |||
#include "ucd/ucd.h" | |||
@@ -83,7 +83,7 @@ struct case_conversion_entry | |||
sys.stdout.write('codepoint_t ucd_to%s(codepoint_t c)\n' % case) | |||
sys.stdout.write('{\n') | |||
sys.stdout.write('\tint begin = 0;\n') | |||
sys.stdout.write('\tint end = sizeof(case_conversion_data)/sizeof(case_conversion_data[0]);\n') | |||
sys.stdout.write('\tint end = sizeof(case_conversion_data)/sizeof(case_conversion_data[0]) - 1;\n') | |||
sys.stdout.write('\twhile (begin <= end)\n') | |||
sys.stdout.write('\t{\n') | |||
sys.stdout.write('\t\tint pos = (begin + end) / 2;\n') |