Fixed crash if initialization of EGL failed but was tried again later.

The internal function SDL_EGL_LoadLibrary() did not delete and remove a mostly
uninitialized data structure if loading the library first failed. A later try to
use EGL then skipped initialization and assumed it was previously successful
because the data structure now already existed. This led to at least one crash
in the internal function SDL_EGL_ChooseConfig() because a NULL pointer was
dereferenced to make a call to eglBindAPI().
This commit is contained in:
Philipp Wiesemann 2015-06-21 17:33:46 +02:00
commit 0e45984fa0
1596 changed files with 468120 additions and 0 deletions

View file

@ -0,0 +1,35 @@
#!/bin/sh
testsTotal=0
testsPassed=0
testsFailed=0
testsSkipped=0
function build() {
testsTotal=$(($testsTotal + 1))
if [ -d "tests/$1" ]; then
cd tests/$1
"xcodebuild" ARCHS=i386 ONLY_ACTIVE_ARCH=NO -project "$1.xcodeproj/"
if [ $? -ne 0 ]; then
testsFailed=$(($testsFailed + 1))
else
testsPassed=$(($testsPassed + 1))
fi
cd ../..
echo "\033]0;Building: $1\007"
else
testsSkipped=$(($testsSkipped + 1))
fi
}
# change to directory above command file
cd `dirname $0`/..
# build all of the tests
for d in ./tests/*; do
build `basename $d`
done
echo "Build Summary: Total=$testsTotal Passed=$testsPassed Failed=$testsFailed Skipped=$testsSkipped"
cd ..

View file

@ -0,0 +1,35 @@
#!/bin/sh
testsTotal=0
testsPassed=0
testsFailed=0
testsSkipped=0
function build() {
testsTotal=$(($testsTotal + 1))
if [ -d "tests/$1" ]; then
cd tests/$1
"xcodebuild" ARCHS=x86_64 ONLY_ACTIVE_ARCH=NO -project "$1.xcodeproj/"
if [ $? -ne 0 ]; then
testsFailed=$(($testsFailed + 1))
else
testsPassed=$(($testsPassed + 1))
fi
cd ../..
echo "\033]0;Building: $1\007"
else
testsSkipped=$(($testsSkipped + 1))
fi
}
# change to directory above command file
cd `dirname $0`/..
# build all of the tests
for d in ./tests/*; do
build `basename $d`
done
echo "Build Summary: Total=$testsTotal Passed=$testsPassed Failed=$testsFailed Skipped=$testsSkipped"
cd ..

View file

@ -0,0 +1,33 @@
#!/bin/sh
testsTotal=0
testsPassed=0
testsFailed=0
testsSkipped=0
function build() {
testsTotal=$(($testsTotal + 1))
if [ -d "tests/$1" ]; then
"xcodebuild" ARCHS=i386 ONLY_ACTIVE_ARCH=NO -workspace ./SDL.xcworkspace/ -scheme "$1"
if [ $? -ne 0 ]; then
testsFailed=$(($testsFailed + 1))
else
testsPassed=$(($testsPassed + 1))
fi
echo "\033]0;Building: $1\007"
else
testsSkipped=$(($testsSkipped + 1))
fi
}
# change to directory above command file
cd `dirname $0`/..
# build all of the tests
for d in ./tests/*; do
build `basename $d`
done
echo "Build Summary: Total=$testsTotal Passed=$testsPassed Failed=$testsFailed Skipped=$testsSkipped"
cd ..

View file

@ -0,0 +1,33 @@
#!/bin/sh
testsTotal=0
testsPassed=0
testsFailed=0
testsSkipped=0
function build() {
testsTotal=$(($testsTotal + 1))
if [ -d "tests/$1" ]; then
"xcodebuild" ARCHS=x86_64 ONLY_ACTIVE_ARCH=NO -workspace ./SDL.xcworkspace/ -scheme "$1"
if [ $? -ne 0 ]; then
testsFailed=$(($testsFailed + 1))
else
testsPassed=$(($testsPassed + 1))
fi
echo "\033]0;Building: $1\007"
else
testsSkipped=$(($testsSkipped + 1))
fi
}
# change to directory above command file
cd `dirname $0`/..
# build all of the tests
for d in ./tests/*; do
build `basename $d`
done
echo "Build Summary: Total=$testsTotal Passed=$testsPassed Failed=$testsFailed Skipped=$testsSkipped"
cd ..

View file

@ -0,0 +1,4 @@
#!/bin/sh
# change to directory above command file
cd `dirname $0`/..
`dirname $0`/premake4 --file=../premake4.lua --to=./Xcode clean

Binary file not shown.

View file

@ -0,0 +1,93 @@
#!/bin/sh
function pause() {
read -p "$*"
}
function pass() {
if [ -d "$1/Build/Debug" ]; then
cd $1/Build/Debug
echo "Testing:" $1
echo "\033]0;Testing: $1\007"
"./$@"
cd ../../..
pause "Press any key to continue..."
fi
}
function randomfile() {
fcount=($1/*.*)
fcount=${#fcount[@]}
fpick=$(($RANDOM % $fcount))
for d in $1/*.*; do
if [[ $fpick -eq 0 ]]; then
RETURN=$d
echo $d
return
fi
fpick=$(($fpick - 1))
done
}
function testspecial() {
if [ -d "$1/Build/Debug" ]; then
cd $1/Build/Debug
randomfile $2
cd ../../..
pass $1 $RETURN
fi
}
# change to directory above command file
cd `dirname $0`/..
cd tests
pass "checkkeys"
pass "loopwave"
#pass "testatomic"
pass "testaudioinfo"
pass "testautomation"
pass "testdraw2"
pass "testchessboard"
pass "testerror"
pass "testfile"
pass "testfilesystem"
pass "testgamecontroller"
pass "testgesture"
pass "testgl2"
pass "testgles"
pass "testhaptic"
pass "testiconv"
pass "testime"
pass "testintersection"
pass "testjoystick"
pass "testkeys"
#pass "testloadso"
pass "testlock"
pass "testmessage"
#pass "testmultiaudio"
pass "testnative"
pass "testoverlay2"
pass "testplatform"
pass "testpower"
pass "testrelative"
pass "testrendercopyex"
pass "testrendertarget"
pass "testresample" "sample.wav" "newsample.wav" "44100"
pass "testrumble"
pass "testscale"
pass "testsem" 1
pass "testshader"
#testspecial "testshape" ./shapes
#testspecial "testshape" ./shapes
#testspecial "testshape" ./shapes
pass "testsprite2"
pass "testspriteminimal"
pass "teststreaming"
pass "testthread"
pass "testtimer"
pass "testver"
pass "testwm2"
pass "torturethread"
cd ..

View file

@ -0,0 +1,4 @@
#!/bin/sh
# change to directory above command file
cd `dirname $0`/..
`dirname $0`/premake4 --file=../premake4.lua --to=./Xcode/Xcode3 xcode3

View file

@ -0,0 +1,4 @@
#!/bin/sh
# change to directory above command file
cd `dirname $0`/..
`dirname $0`/premake4 --file=../premake4.lua --to=./Xcode/Xcode4 xcode4