-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[sdf, usd] Fix crash when URL-encoded characters are used to generate session layer identifiers #2022
[sdf, usd] Fix crash when URL-encoded characters are used to generate session layer identifiers #2022
Conversation
Looks like there are some newly failing tests after I rebased to latest dev; will try to look into those over the next couple weeks. |
6ce8a3c
to
b7d54c7
Compare
Filed as internal issue #USD-7612 |
b7d54c7
to
92aea95
Compare
Looks good, thanks! |
Hi @asluk ! I haven't debugged yet to see what's going wrong, but I wanted to give you a heads up that I haven't had a successful test run ~
|
Thanks @meshula ... it's passing for me on Windows; will try it on Ubuntu via WSL2 next week (are the Azure pipelines running tests? They are all passing, but I forget if they are only compiling). 🙏 |
@asluk yeah azure pipeline doesn't run tests at present. We want to get to it but I think timeouts are a concern there! https://github.com/PixarAnimationStudios/USD/blob/release/azure-pipelines.yml |
… session layer identifiers.
92aea95
to
87dd545
Compare
Thanks @meshula and @tallytalwar -- the test is passing for me on Windows and on Ubuntu via WSL2; not sure what might be happening differently on Fedora :( |
[sdf, usd] Fix crash when URL-encoded characters are used to generate session layer identifiers
When opening a stage whose root layer has URL-encoded characters, sequences such as %20 for spaces could get misinterpreted as format strings when generating session layer identifiers on the fly via TfStringPrintf. This change uses stringstreams to ensure that URL-encoded characters never get misinterpreted on this codepath, which was previously leading to crashes such as the one in the testUsdStage case added here.
Thanks to Seema Kulkarni and Edward Slavin for earlier work on this PR.