roo-rb / roo

Roo provides an interface to spreadsheets of several sorts.
MIT License
2.78k stars 503 forks source link

Fix reading of a comment with an author in xlsx. #562

Open Xenofex opened 3 years ago

Xenofex commented 3 years ago

When an comment is created in MS Excel, the author name is automatically prefixed as : '. Roo was not handling this correctly - in such case, the comments xml node may contain multiple /text/r/t node instead of only one. The code extracting comments was only extract the first such node. As a result, the MS Excel generated comment "Mr Author: comment content" was extracted as "Mr Author:", for which is the first /text/r/t node.

Furthermore, the comment in Excel is rich text, which is represented by multiple nodes in xml format. Therefore, extracting multiple nodes in a comment is always expected.

Summary

Short version: comment with an author "Eli Wang: \ncomment content" was incorrectly extracted as only "Eli Wang:"

patrickkulling commented 1 year ago

@Empact @kakubin This change is looking good to me. Test coverage is there as well.

WDYT?