diff --git a/checker/checker.sh b/checker/checker.sh
index 8e9b491d39c32be4c766ef3ef0695e4f594313b5..d99f5e9211388ac85c43d7754bed533930fa70cb 100755
--- a/checker/checker.sh
+++ b/checker/checker.sh
@@ -87,8 +87,10 @@ run_test()
     if ${test_fun_array["$test_func_index"]} ; then
         SCORE=$((SCORE + points))
         echo "$points/$points"
+        return 0
     else
         echo "0/$points"
+        return 1
     fi
 }
 
@@ -106,5 +108,6 @@ if [ -z "$1" ] ; then
     test_all
 else
     run_test "$1"
+    exit $?
 fi
 cleanup