Conversation
0523a21 to
d3fdd86
Compare
d3fdd86 to
308e9ec
Compare
308e9ec to
54957e2
Compare
…share the append helper
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (4)
Included review availability: Your plan provides up to 10 included reviews per hour; 9 remain after this review. WalkthroughPath utilities distinguish host-platform separators from separators recognized across platforms, and add helpers for separator lookup and filename extraction. ChangesPath Utilities
Priority: ⬇️ Low Estimated code review effort: 2 (Simple) | ~10 minutes Change: Refactor Suggested reviewers: Merge Risk: ⚪ Minimal · up to The path utilities preserve the existing absolute-path behavior, and the new string and separator helpers follow their stated contracts. No actionable merge-blocking risk was found. Security Architecture ReviewSecurity architecture risk: 🔵 Low · up to The path helpers distinguish game-data separators from separators used by the host filesystem. The new filesystem helper guards its use of the string accessor, and no exploitable path is established. How future callers will use these public helpers remains uncertain. Retained concerns Security review detailsSecurity Blast Radius
Trust Boundaries and Controls
Hardening Proposals
🚥 Pre-merge checks | ✅ 4✅ Passed checks (4 passed)
Comment |
|
|
|
||
| // Requires a nonempty string. | ||
| char front() const; | ||
| char back() const; |
There was a problem hiding this comment.
I suggest also add an explanation why getCharAt, front, back do not return char&. Because this is a copy-on-write string and it would not work unlike std::string which is always a unique copy.
| #include "BaseType.h" | ||
| #include <string.h> | ||
|
|
||
| inline char getNativePathSeparator() |
There was a problem hiding this comment.
Actually you can move it back to where it was before. I see now you had them sorted by is and get which made sense.
Extract the separator search from
getExtensioninto reusable helpers inPathUtil.h, and addFileSystem::appendPathSeparatorfor the map and archive fixes in #3107 and #3141.Keep native path separators separate from game-data separators, since game paths can contain backslashes on any platform. Existing
getExtensionandisAbsolutePathbehavior stays unchanged.All changes are in Core.