--- !ditz.rubyforge.org,2008-03-06/issue title: safeguard against creating too long strings desc: |- Current implementation has multiple limitations which prevent very long strings (but still shorter than the 4G spec limit) from always working. The x-UTF-8 encoded string is limited by a 4G (perhaps 2G) byte size limit. It may not be possible to e.g. case convert a string near this byte limit if the converted string contains codepoints with a longer UTF-8 encoding. Current C typing shortcomings (e.g. using "int" instead of an unsigned type for indexing strings) may cause a 2G byte (and char) limit to strings. A basic safeguard would be to refuse interning strings longer than a certain limit. type: :task component: duk release: v0.8 reporter: sva status: :closed disposition: :fixed creation_time: 2013-03-12 22:15:03.269558 Z references: [] id: 8d3bab8af11e60088d2310751c8ac63a46a4c819 log_events: - - 2013-03-12 22:15:03.456796 Z - sva - created - "" - - 2013-08-27 20:39:36.194908 Z - sva - assigned to release v0.7 from v0.6 - "" - - 2013-10-24 00:43:53.035269 Z - sva - assigned to release v0.8 from v0.7 - "" - - 2013-11-09 14:54:07.911753 Z - sva - commented - Also need to ensure that concatenation results don't overflow length. - - 2013-12-12 23:30:20.237127 Z - sva - closed with disposition fixed - ""