No magic, revert some experimental changes in pipeline
authorNHOrus <jy6x2b32pie9@yahoo.com>
Mon, 17 Jul 2017 16:59:55 +0000 (19:59 +0300)
committerEric S. Raymond <esr@thyrsus.com>
Mon, 17 Jul 2017 17:56:52 +0000 (13:56 -0400)
.gitlab-ci.yml
main.c

index 984111df8031110b3a9131c7c5c1e58bcf5394de..d337d0e184e9522b4ac4a5e7540ce0c500b7ceb0 100644 (file)
@@ -19,7 +19,6 @@ binary:debug:
       - "*.o"
       - dungeon.c
       - dungeon.h
-      - "*.gcno"
 
 binary:release:
   stage: build
@@ -72,16 +71,12 @@ test:debug:
   before_script:
     - zypper install -y make gcc libedit-devel libasan3 libubsan0 python python2-PyYAML lcov
   script:
-    - make debug
-    - make check
-    - lcov -t "advent" -o advent.info -c -d .
-    - genhtml -o coverage advent.info
-    - cd tests
-    - ./coverage_dungeon.py
-    - cd ..
+    - make coverage
   artifacts:
     paths:
       - coverage
+  dependencies:
+    - binary:debug
 
 test:release:
   stage: test
diff --git a/main.c b/main.c
index 350c4aeb36b7f4622b32306b2b5d0c8a4507b475..192d1299464e338ebaf56bbf39c2af720830e90f 100644 (file)
--- a/main.c
+++ b/main.c
@@ -137,7 +137,7 @@ static bool fallback_handler(struct command_t command)
 /* fallback handler for commands not handled by FORTRANish parser */
 {
     long sv;
-    char buf[2 * LINESIZE + 1];
+    char buf[DIM(command.raw1) + DIM(command.raw2) + 1];
     sprintf(buf, "%s %s", command.raw1, command.raw2);
 
     if (sscanf(buf, "seed %ld", &sv) == 1) {
@@ -146,8 +146,7 @@ static bool fallback_handler(struct command_t command)
         // autogenerated, so don't charge user time for it.
         --game.turns;
         return true;
-    }
-    else if (sscanf(buf, "waste %ld", &sv) == 1) {
+    } else if (sscanf(buf, "waste %ld", &sv) == 1) {
         game.limit -= sv;
         printf("Game limit is now %ld\n", game.limit);
         return true;
@@ -909,10 +908,10 @@ static void lampcheck(void)
             rspeak(REPLACE_BATTERIES);
             game.prop[BATTERY] = DEAD_BATTERIES;
 #ifdef __unused__
-           /* This code from the original game seems to have been faulty.
-            * No tests ever passed the guard, and with the guard removed
-            * the game hangs when the lamp limit is reached.  
-            */
+            /* This code from the original game seems to have been faulty.
+             * No tests ever passed the guard, and with the guard removed
+             * the game hangs when the lamp limit is reached.
+             */
             if (TOTING(BATTERY))
                 drop(BATTERY, game.loc);
 #endif