You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As you can see here, first it gets the width of the source: 1920, the default size of a color source. Then it subtracts the left crop size and the right crop size, which are both 1000. size.x thus should be -920, which is an invalid size value of course.
However, obs_source_get_width returns a uint32_t. While the member variables of the obs_sceneitem_crop structure are all int, the mix of signed and unsigned integers here caused the result of that equation to be 4294967216, i.e. an integer overflow.
This overflow would cause a near-infinite loop in DrawStripedLine() in OBSBasicPreview.cpp, which additionally has such bad perf to begin with that it just has no chance of ending any time soon. Perf fixes will additionally need to be deployed to help reduce mutex lock time.
I have fixed this in #11922, and I will also fix draw performance in this file in a subsequent PR.
Operating System Info
Windows 11
Other OS
No response
OBS Studio Version
Other
OBS Studio Version (Other)
31.0.0
OBS Studio Log URL
https://obsproject.com/logs/WwflVz53z6u6DLaI
OBS Studio Crash Log URL
No response
Expected Behavior
obs do not cause UI block
Current Behavior
After setting corp, resize source, obs has UI block
Steps to Reproduce
Anything else we should know?
1111.mp4
The text was updated successfully, but these errors were encountered: