certain caractère Unicode fait planter ZdS

a marqué ce sujet comme résolu.

bonjour,

en éditant un message (premier d’un nouveau sujet), j’ai voulu y placer des caractères Unicode peu courant, dont le premier était U+1D4E5 (un V majuscule manuscrit). aucun souci lors de la prévisualisation, mais après enregistrement, le message est violemment tronqué à ce caractère, que ce soit dans le HTML affiché ou dans le Markdown obtenu lors d’une réédition ultérieure. la suite est pourtant parsée puisque ce caractère était dans le texte d’un lien et que le HTML généré contient la balise ouvrante de ce lien avec son URL (mais pas la balise fermante, donc du HTML invalide).

démonstration sur ce message :

1
-> **[<U+1D4E5><U+1D4F2><U+1D4EE><U+1D4F7><U+1D503><U+1D502> <U+1D4FF><U+1D4F8><U+1D4F2><U+1D4FB>](https://gro.org)** <-
+4 -0

Ah ouais … Violant …Code HTML générer par le bug en image

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
char** toBlock(char* str, int nbC, int* nbB) {
  char** bloc = NULL;
  char* lastSpace = NULL;
  char* lastSpaceB = NULL;
  int ligneI = 0;
  *nbB = 0;
  while( *str ) {
    lastSpaceB = NULL;
    lastSpace = NULL;
    ++*nbB;
    bloc = realloc(bloc, *nbB * sizeof *bloc);
    bloc[*nbB-1] = malloc(nbC);
    int j = 0;
    while( *str && *str != '\n' && j < nbC ) {
      if( isspace(*str) ) {
        do lastSpace = str++; while( isspace(*str) );
        lastSpaceB = bloc[*nbB-1] + j;
        bloc[*nbB-1][j++] = " 

                
+0 -0
Ce sujet est verrouillé.