Files
@ r25011:61d28a13bb41
Branch filter:
Location: cpp/openttd-patchpack/source/.github/workflows/commit-checker.yml - annotation
r25011:61d28a13bb41
1.6 KiB
text/x-yaml
Remove: [Video] no longer draw in a thread
Drawing in a thread is a bit odd, and often leads to surprising
issues. For example, OpenGL would only allow it if you move the
full context to the thread. Which is not always easily done on
all OSes.
In general, the advise is to handle system events and drawing
from the main thread, and do everything else in other threads.
So, let's be more like other games.
Additionally, putting the drawing routine in a thread was only
done for a few targets.
Upcoming commit will move the GameLoop in a thread, which will
work for all targets.
Drawing in a thread is a bit odd, and often leads to surprising
issues. For example, OpenGL would only allow it if you move the
full context to the thread. Which is not always easily done on
all OSes.
In general, the advise is to handle system events and drawing
from the main thread, and do everything else in other threads.
So, let's be more like other games.
Additionally, putting the drawing routine in a thread was only
done for a few targets.
Upcoming commit will move the GameLoop in a thread, which will
work for all targets.
r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24416:b913ae89145f r24416:b913ae89145f r24416:b913ae89145f r24416:b913ae89145f r24416:b913ae89145f r24416:b913ae89145f r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 r24065:12ff24bafc05 | name: Commit checker
on:
pull_request:
jobs:
commit-checker:
name: Commit checker
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
with:
fetch-depth: 4
- name: Get pull-request commits
run: |
set -x
# actions/checkout did a merge checkout of the pull-request. As such, the first
# commit is the merge commit. This means that on HEAD^ is the base branch, and
# on HEAD^2 are the commits from the pull-request. We now check if those trees
# have a common parent. If not, we fetch a few more commits till we do. In result,
# the log between HEAD^ and HEAD^2 will be the commits in the pull-request.
DEPTH=4
while [ -z "$(git merge-base HEAD^ HEAD^2)" ]; do
# Prevent infinite recursion
if [ ${DEPTH} -gt 256 ]; then
echo "No common parent between '${GITHUB_HEAD_REF}' and '${GITHUB_BASE_REF}'." >&2
exit 1
fi
git -c protocol.version=2 fetch --no-tags --prune --progress --no-recurse-submodules --deepen=${DEPTH} origin HEAD
DEPTH=$(( ${DEPTH} * 4 ))
done
# Just to show which commits we are going to evaluate.
git log --oneline HEAD^..HEAD^2
- name: Checkout commit-checker
uses: actions/checkout@v2
with:
repository: OpenTTD/OpenTTD-git-hooks
path: git-hooks
ref: master
- name: Check commits
run: |
set -x
HOOKS_DIR=./git-hooks/hooks GIT_DIR=.git ./git-hooks/hooks/check-commits.sh HEAD^..HEAD^2
echo "Commit checks passed"
|