View Issue Details

IDProjectCategoryView StatusLast Update
0031562RunnerUbuntu (YYC)Public2020-03-09 16:41
ReporterPatrick RocheAssigned ToRussell Kay 
PriorityMediumSeverityA - Crash/HangReproducibilityUnable To Reproduce
Status ResolvedResolutionFixed 
PlatformUbuntuOSOS Version
Product Version2.2.3 
Target Version2.3.0Fixed in Version2.3.0 
Summary0031562: Ubuntu YYC: Crash due to bad call to XUndefineCursor() if game fails to start properly
DescriptionIf you launch a game on Linux and it fails to start (either because Steamworks didn't initialize or Steamworks requested that the process terminate so it can be relaunched under the Steam client), then the process will make several calls during shutdown that assumed the game had fully initialized.

The one that finally brings it down is this call:

XUndefineCursor(NULL, 0);

where it clearly expected to have a X11 Display pointer and valid window set up, but has neither, so libx11 dereferences a NULL pointer from that first argument.

Prior to this, it calls several OpenGL functions, but we never got to the point where a GL context was created, so these are also possible crashes too.
Steps To ReproduceWe've been unable to reproduce this issue internally.
Additional InformationThis bug is for tracking and CoreTech investigation.
TagsNo tags attached.
1.4 Found In
2.x Runtime Found In2.
2.x Runtime Verified In


Russell Kay

2020-01-22 16:14

Manager   ~0065319

Fixed in gitlab