flowable / flowable/flowable-engine

BpmnXMLUtil.parseExtensionElement setElementText has bug of Line wrap cover

Aperta
#3,886 1 commento 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Java
Stelle
9.5k
Fork
2.9k
Merge medio
7h 8m
PR unite (30g)
2

Descrizione

**Describe the bug**
当 extensionElements 元素 text中存在换行时 xtr.next(); 方法会导致数据被覆盖
When there is a line break in the extensionElements element text, xtr. text(); Method can cause data to be overwritten
**Expected behavior**
A clear and concise description of what you expected to happen.

**Code**
while (!readyWithExtensionElement && xtr.hasNext()) {
xtr.next();
if (xtr.isCharacters() || XMLStreamReader.CDATA == xtr.getEventType()) {
if (StringUtils.isNotEmpty(xtr.getText().trim())) {
//fix set to append
extensionElement.setElementText(xtr.getText().trim());
}
} else if (xtr.isStartElement()) {
ExtensionElement childExtensionElement = parseExtensionElement(xtr);
extensionElement.addChildElement(childExtensionElement);
} else if (xtr.isEndElement() && extensionElement.getName().equalsIgnoreCase(xtr.getLocalName())) {
readyWithExtensionElement = true;
}
}

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Inizia da BpmnXMLUtil.parseExtensionElement e verifica come gli eventi di caratteri e CDATA di XMLStreamReader arrivano a setElementText. Riproduci il problema con testo suddiviso su più righe all’interno di extensionElements e verifica che tutto il testo venga conservato invece di essere sovrascritto; nell’issue non è indicato alcun percorso di file o test.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
java
Ambito
backend
Tipo di issue
Bug
Difficoltà
2/5
Tempo stimato
1-3 ore
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.