diff -r 40b9d147b855 -r c52f5f68f9fb CharacterArray.st --- a/CharacterArray.st Mon Jun 20 14:05:57 2016 +0200 +++ b/CharacterArray.st Mon Jun 20 14:07:51 2016 +0200 @@ -4645,13 +4645,13 @@ |outStream prevChar map mapEntries mappedChar| map := self class unicodeNormalizationMap. - + self bitsPerCharacter <= 8 ifTrue:[^ self]. "/ I cannot contain any overtypes - (self contains:[:ch | ch codePoint between:16r0300 and:16r032f]) ifFalse:[^ self]. "/ I do not contain any overtypes + (self contains:[:ch | ch unicodeBlock == #'COMBINING_DIACRITICAL_MARKS']) ifFalse:[^ self]. "/ I do not contain any overtypes outStream := WriteStream on:(self species new:self size). self do:[:char | - ((char codePoint between:16r0300 and:16r032F) + ((char unicodeBlock == #'COMBINING_DIACRITICAL_MARKS') and:[ (mapEntries := map at:char ifAbsent:nil) notNil and:[ (mappedChar := mapEntries at:prevChar ifAbsent:nil) notNil ]]) ifTrue:[ prevChar := mappedChar.