app/headless: avoid race between ReleaseCurrent and MakeCurrent

Release context on MakeCurrent failure paths as well.

Fixes gio#144

Signed-off-by: Elias Naur <mail@eliasnaur.com>
This commit is contained in:
Elias Naur
2020-07-04 17:37:02 +02:00
parent 30ad63283b
commit e2278b64c1
2 changed files with 8 additions and 3 deletions
+5 -1
View File
@@ -166,12 +166,16 @@ func (c *Context) MakeCurrent() error {
var err error
c.srgbFBO, err = srgb.New(c.c)
if err != nil {
c.ReleaseCurrent()
return err
}
}
if c.refreshFBO {
c.refreshFBO = false
return c.srgbFBO.Refresh(c.width, c.height)
if err := c.srgbFBO.Refresh(c.width, c.height); err != nil {
c.ReleaseCurrent()
return err
}
}
return nil
}