summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKali Kaneko <kali@leap.se>2018-04-26 00:08:46 +0200
committerKali Kaneko <kali@leap.se>2018-04-26 00:08:46 +0200
commitc1d2033d4f6e5f139ded0a1896c5c7f58ebd2e6f (patch)
treebcbebedf303358bf83bac922d244f368570f77d5
parent513a1c153c7d4a3a0b787a1cb83816c905d191d4 (diff)
[bug] workaround for segfault caused by qtwebview bug
-rw-r--r--docs/changelog.rst4
-rw-r--r--src/leap/bitmask/gui/app.py8
2 files changed, 12 insertions, 0 deletions
diff --git a/docs/changelog.rst b/docs/changelog.rst
index de4c7f94..3da07285 100644
--- a/docs/changelog.rst
+++ b/docs/changelog.rst
@@ -5,6 +5,10 @@ Changelog
-------------------------------
.. note:: This version is not yet released and is under active development.
+Bugfixes
+~~~~~~~~
+- `#9278 <https://0xacab.org/leap/bitmask-dev/issues/9278>`_: Workaround for QtWebview bug causing a crash.
+
Misc
~~~~
- Fix snap bug in install hook when python2 was not installed.
diff --git a/src/leap/bitmask/gui/app.py b/src/leap/bitmask/gui/app.py
index 02600420..a0d9be6f 100644
--- a/src/leap/bitmask/gui/app.py
+++ b/src/leap/bitmask/gui/app.py
@@ -21,12 +21,14 @@ It just launches a wekbit browser that runs the local web-ui served by bitmaskd
when the web service is running.
"""
+import ctypes
import os
import platform
import signal
import sys
import webbrowser
+from ctypes import import util
from functools import partial
from multiprocessing import Process
@@ -41,6 +43,12 @@ from leap.bitmask.gui.housekeeping import check_stale_pidfile
HAS_WEBENGINE = False
+
+# This is a workaround for #9278.
+# See https://bugs.launchpad.net/ubuntu/+source/
+# qtbase-opensource-src/+bug/1761708
+ctypes.CDLL(util.find_library('GL'), ctypes.RTLD_GLOBAL)
+
if platform.system() == 'Windows':
from multiprocessing import freeze_support
from PySide import QtCore, QtGui