scieloorg / Web

SciELO Web
www.scielo.br
6 stars 21 forks source link

Corrige bug na decodificação de caracteres UTF-8 #706

Closed gustavofonseca closed 4 years ago

gustavofonseca commented 4 years ago

O erro se manifestava na URL /oai/scielo-oai.php?verb=ListRecords&metadataPrefix=oai_dc&set=0102-8650&resumptionToken=HR__S0102-86502019000100202:0102-8650:::oai_dc, do endpoint do protocolo OAI-PMH, ao decodificar a referência numéricas � que não corresponde a um caractere unicode válido.

A solução foi adicionar uma checagem com expressão regular que casa apenas com caracteres UTF-8 válidos, conforme descrito em: https://www.php.net/manual/pt_BR/function.mb-detect-encoding.php#112391

Onde a revisão poderia começar?

n/a

Como este poderia ser testado manualmente?

Acesse /oai/scielo-oai.php?verb=ListRecords&metadataPrefix=oai_dc&set=0102-8650&resumptionToken=HR__S0102-86502019000100202:0102-8650:::oai_dc antes e depois de aplicar o patch.

Algum cenário de contexto que queira dar?

n/a

Screenshots

n/a

Quais são tickets relevantes?

n/a

Referências

https://www.php.net/manual/pt_BR/function.mb-detect-encoding.php#112391