Conversation
Signed-off-by: liuhy <liuhongyu@apache.org>
|
Dispatching on POI's if (uri != null && !uri.equals(NS_SPREADSHEETML)) {
return;
}Should we add the same guard, plus a test? |
Signed-off-by: liuhy <liuhongyu@apache.org>
|
Done in |
There was a problem hiding this comment.
Hi @Aias00, while testing nested namespace content, I noticed that the namespace guard skips the foreign element events, but characters() still receives their text while the outer <t> is active. I tested an outer <t> containing a foreign <ext:t> element, and Name + foreign + 0 was read as Nameforeign0. I saw the same issue inside <v>, where the extra text can change the shared-string index and cause an IndexOutOfBoundsException.
I think both handlers should keep an ignored-element depth: increment it when entering a foreign element, ignore all character data while the depth is nonzero, and decrement it on the matching end event. Adding nested foreign-content cases for both <t> and <v> would cover this path.
Signed-off-by: liuhy <liuhongyu@apache.org>
|
Done in |
Purpose of the pull request
Closed: #1156
Valid OOXML namespace prefixes are arbitrary, but the XLSX SAX handlers previously dispatched only unprefixed,
x:, andns2:tag names.What's changed?
localName, with a qualified-name fallback.p:prefix and verifies model reading.Verification:
Checklist