Commit graph

2134 commits

Author SHA1 Message Date
Enno Rehling
65902ca97f do not call a function test_* that is not a test (I got confused and broke it when trying to make a change) 2015-12-06 12:02:16 +01:00
Steffen Mecke
864c875316 fix typo: fiery breath was icy 2015-12-05 22:27:03 +01:00
Enno Rehling
435d801239 fix compiation problems after merge
what is going on with this? why was critbit outdated?
2015-12-05 18:45:03 +01:00
Enno Rehling
1d57bf527d Merge branch 'master' into develop
Conflicts:
	src/battle.test.c
	src/buildno.h
2015-12-05 17:27:04 +01:00
Enno Rehling
bf2920d1ae fix warnings on gcc 2015-12-05 17:25:47 +01:00
Enno Rehling
62ee1468b8 https://bugs.eressea.de/view.php?id=2166
* fix magic resistance calculation in calculate_armor.
* add related tests.
* refactor BF_CANATTACK -> BF_NO_ATTACK because it is easier.
2015-12-05 17:17:21 +01:00
Enno Rehling
3e048e2a84 Merge branch 'bug_2139' of https://github.com/stm2/server into stm2-bug_2139
Conflicts:
	scripts/tests/e3/castles.lua
	scripts/tests/e3/rules.lua
2015-12-03 11:06:55 +01:00
Enno Rehling
b3e7fa63e0 Merge pull request #396 from stm2/spell_parameters
fixed treatment of spell parameters (bug 1867)
2015-12-03 11:04:57 +01:00
Enno Rehling
e91310f576 Merge pull request #422 from ennorehling/feature/issue-418-seaserpent-piracy-crash
issue #419, eliminate language_struct.h, make the struct module-private
2015-12-02 11:52:16 +01:00
Steffen Mecke
e3d7d23d00 re-enable sea serpent piracy 2015-12-01 22:30:51 +01:00
Steffen Mecke
9c076ba6b9 fix piracy_cmd for swimmers and flyers 2015-12-01 22:13:20 +01:00
Enno Rehling
9b645bf46c issue #419, eliminate language_struct.h, make the struct module-private 2015-12-01 12:24:22 +01:00
Enno Rehling
70354a355b disable piracy for sea serpents, piracy_cmd cannot handle it (issue #418) 2015-12-01 12:22:03 +01:00
Steffen Mecke
eae87bc7f1 fix null pointer access, bug2169 2015-11-29 21:06:35 +01:00
Enno Rehling
4b7cb824bd Merge branch 'massive_overload' of https://github.com/stm2/server into stm2-massive_overload
Conflicts:
	src/move.c
	src/tests.c
2015-11-27 12:40:17 +01:00
Enno Rehling
950bf91850 fix merge conflict in PR #397 (config changes) 2015-11-26 18:48:21 +01:00
Enno Rehling
6ad5db8e22 Merge pull request #397 from stm2/taxing_message
taxing without skill does not fail silently any more
2015-11-26 18:43:57 +01:00
Enno Rehling
0410581907 Merge branch 'market_tests' of https://github.com/stm2/server into stm2-market_tests
Conflicts:
	src/move.test.c
	src/study.c
2015-11-26 18:42:23 +01:00
Steffen Mecke
fe49f01bb6 added moa tests for buildingtype_exists 2015-11-25 23:25:59 +01:00
Enno Rehling
6c2f4be4af fix sea serpents using piracy (by re-ordering the decision making process) 2015-11-25 15:29:26 +01:00
Enno Rehling
90b0bdd44e re-enable all monster tests except piracy for seaserpents, which is red. 2015-11-25 14:53:29 +01:00
Enno Rehling
1cf805649e Merge remote-tracking branch 'upstream/develop' into develop
Conflicts:
	src/monsters.c
	src/monsters.test.c
2015-11-25 14:38:26 +01:00
Enno Rehling
c85e489f4f Merge branch 'monster_leftovers' of https://github.com/stm2/server into stm2-monster_leftovers
Conflicts:
	src/kernel/unit.c
	src/laws.test.c
	src/monsters.c
2015-11-25 14:25:42 +01:00
Enno Rehling
b6bb5dee85 fix last merge to work with new config code 2015-11-25 13:27:44 +01:00
Enno Rehling
677f7eac0a Merge branch 'master' into develop
Conflicts:
	src/move.c
2015-11-25 13:25:36 +01:00
Enno Rehling
4e4a11d40c Merge remote-tracking branch 'upstream/master' 2015-11-25 12:06:22 +01:00
Enno Rehling
f301bec623 addressing comments by solthar on bug 2164, PR #408: storms should still cause damage to ships.
cleaning up some configuration lookups in sail, moving them outside of loops.
2015-11-25 12:04:09 +01:00
Enno Rehling
f559c263e3 cleanup of config.c: move more code to other modules like unit.c and faction.c 2015-11-24 19:53:27 +01:00
Enno Rehling
8aa7fec54c config.c cleanup: move attribute registration to attributes.c 2015-11-24 19:32:52 +01:00
Enno Rehling
84a943b698 fix gcc build 2015-11-24 19:15:53 +01:00
Enno Rehling
64b84481b2 refactoring: move parsing and allies code out of config.c 2015-11-24 18:52:09 +01:00
Enno Rehling
bdc5372537 disable test for seaserpent piracy (planned for 3.8) 2015-11-24 16:12:33 +01:00
Enno Rehling
1b3c8ea466 import monsters tests from PR #404
Monsters (i.e. sea serpents) can attack on oceans, when not guarding
2015-11-24 14:57:50 +01:00
Enno Rehling
817d81dbf9 remove the rules.hunger.reduces_skill variable, no game was doing anything other than the default. 2015-11-23 21:05:25 +01:00
Enno Rehling
0a47f0e398 eliminate SkillCap feature, it was stupid and not used by any game, ever 2015-11-23 20:58:51 +01:00
Enno Rehling
2a9dee4134 Merge branch 'master' into develop
Conflicts:
	src/move.c
2015-11-23 20:33:47 +01:00
Enno Rehling
d45f16982d https://bugs.eressea.de/view.php?id=2164
ships no longer receive damage from drifting. eliminating the code for this, instead of just the configuration parameters, since all active games now agree on this rule.
2015-11-23 18:41:11 +01:00
Enno Rehling
5b9333f6d9 Merge branch 'release-3.7' into develop
Conflicts:
	src/buildno.h
	src/monsters.c
2015-11-23 17:12:48 +01:00
Enno Rehling
1ed0eaf473 release version 3.7.3 2015-11-23 17:10:49 +01:00
Enno Rehling
0e5fcbbc7c Merge pull request #407 from ennorehling/release-3.7
bugfixes 2163, 2164 and 2165
2015-11-23 17:07:11 +01:00
Enno Rehling
4b7b32cbb5 use monster_attack, not explicit create_order, because we need to check buildings, etc. 2015-11-23 17:00:07 +01:00
Enno Rehling
defd870cd1 https://bugs.eressea.de/view.php?id=2163
Fix order of Arguments when checking for defensive building.
Solthar reminds us that good variable names are good.
2015-11-23 16:48:05 +01:00
Enno Rehling
b6a947ca0c https://bugs.eressea.de/view.php?id=2165
Monster bewachten nicht, wenn sie nicht ausreichend bewaffnet waren, weil der nötige Check nicht in can_start_guarding gemacht wurde, sondern in guard_on_cmd.
2015-11-23 15:35:26 +01:00
Enno Rehling
c7ab0e8f59 fix https://bugs.eressea.de/view.php?id=2164 (ships get no damage when they drift).
simplify attack_chance configuration, set it only once.
this way, I can more easily fudge it to 1.0 in the debugger.
2015-11-23 12:37:42 +01:00
Enno Rehling
dcfc1d1f15 Merge pull request #406 from ennorehling/critbit-params
config_get/config_set refactoring, kill cache logic
2015-11-23 12:25:16 +01:00
Enno Rehling
48c75466b6 kill static caches for floating-point variables 2015-11-22 17:32:35 +01:00
Enno Rehling
2e392b4d7c eliminate even more static variable caches 2015-11-22 16:14:27 +01:00
Enno Rehling
f7698d92a9 change how migrant quota is configured for a race, eliminate the related rule caching 2015-11-22 15:53:50 +01:00
Enno Rehling
5f457f77b4 refactoring: move those count_* functions out of config.c 2015-11-22 15:46:14 +01:00
Enno Rehling
3bd458b5e8 optimization: read configuration once before all battles, not before or during each individual one. 2015-11-22 15:29:43 +01:00
Enno Rehling
7bbf11c6b6 eliminate more static cached configuration values 2015-11-22 15:14:50 +01:00
Enno Rehling
17068af332 unusual potion delay attribute can use a potion in another region? unclear what this code does, but fixing my bad assumption. 2015-11-22 14:36:05 +01:00
Enno Rehling
c6bac1e49e refactoring: sprout methods for all special-action potions
remove static caches for WOL configuration
2015-11-22 14:28:15 +01:00
Enno Rehling
35e7a0bc79 eliminate global.cookie and the cache-invalidation which it enabled 2015-11-22 12:50:10 +01:00
Enno Rehling
73fc5a51b3 remove more junk defines from config.h, move them closer to where they belong 2015-11-22 12:47:57 +01:00
Enno Rehling
bf74eb1446 cleanup: remove movement constatns from config.h 2015-11-22 12:41:22 +01:00
Enno Rehling
cf6084a5ca refactoring: move game configuration defines out of config.h
temporarily pushing them into settings.h where others already are, though they should be in their own modules or in config files.
2015-11-22 12:37:25 +01:00
Enno Rehling
74b1f9872e change visibility of configuration data structures, local to config.c only 2015-11-22 12:27:08 +01:00
Enno Rehling
fe173e9551 refactor: make sure global.paramteres is used only inside config.c 2015-11-22 12:24:27 +01:00
Enno Rehling
edcd79d044 add a config_token function to look for a token inside a list 2015-11-22 12:20:33 +01:00
Enno Rehling
a4cb5e2906 replace all get_param_* for global.parameters with config_get_* 2015-11-22 10:44:46 +01:00
Enno Rehling
b05fe9316a introducing config_set and config_get so we don't have to refer to globals.parameters everywhere 2015-11-22 10:33:31 +01:00
Enno Rehling
66dd1b8172 remove produce_exp caching in static variables (more slowdown) 2015-11-22 10:21:37 +01:00
Enno Rehling
f0a47321d6 reduce log spam 2015-11-21 21:49:33 +01:00
Enno Rehling
6b83120c7a remove caching from is_guarded, which should slow it down significantly :-( 2015-11-21 21:33:17 +01:00
Enno Rehling
7dae5aa035 eliminate silly caching logic from natural armor calculation 2015-11-21 19:02:14 +01:00
Enno Rehling
990fda6234 clean up config.c, remove static configuration caching 2015-11-21 18:13:16 +01:00
Enno Rehling
bc936bf019 eliminate more static variable configuration caching 2015-11-21 13:52:47 +01:00
Enno Rehling
7e27928d17 eliminate static variables and cache logic from more modules 2015-11-21 12:28:20 +01:00
Enno Rehling
86faae6eea eliminate static variables and cache logic from upkeep 2015-11-21 12:21:07 +01:00
Enno Rehling
0d91a7dfde eliminate static variables and cache logic 2015-11-21 12:18:38 +01:00
Enno Rehling
06f8ba9ee4 faster lookup for get_param with tries
eliminate unnecessary constatn from rand.c
2015-11-20 15:48:17 +01:00
Steffen Mecke
ae870ff53e fix division by zero 2015-11-19 16:46:46 +01:00
Steffen Mecke
afd44fc50a fix test interdependence; set silver weight to 1 2015-11-19 15:29:04 +01:00
Steffen Mecke
a6757ecf9d Merge branch 'develop' into massive_overload
Conflicts:
	src/move.test.c
2015-11-19 14:54:14 +01:00
Steffen Mecke
92ee0f24a4 tweaked parameters for massive overload
so ... many ... configuration parameters
scrubbed lua test
2015-11-19 12:36:15 +01:00
Enno Rehling
0363938db0 Merge pull request #402 from stm2/follow_message
error msg for movement should contain FOLLOW SHIP order
2015-11-17 17:42:45 +01:00
Steffen Mecke
acb45e079d test commit for travis 2015-11-17 17:34:03 +01:00
Steffen Mecke
8a063c3567 fix bug in dragon_affinity 2015-11-17 17:19:06 +01:00
Steffen Mecke
a7a82662b7 reduce maximum overload damage to 38% 2015-11-17 15:47:43 +01:00
Steffen Mecke
742a30cc39 fix seaserpents
seaserpents could not do piracy
seaserpents should be able to attack after move
2015-11-17 12:17:28 +01:00
Steffen Mecke
2a569635df seaserpent test 2015-11-17 12:13:23 +01:00
Steffen Mecke
a144686e66 monsters may attack on ocean 2015-11-17 12:13:23 +01:00
Steffen Mecke
a366cd4b17 tests for plan_monster 2015-11-17 12:12:06 +01:00
Steffen Mecke
384a2ea7d7 remove duplicate monster_attacks code 2015-11-17 02:16:07 +01:00
Steffen Mecke
069303d0ae slightly improved monster code
change normalvariate to more efficient dice based method
try harder to learn a useful skill
2015-11-17 02:14:28 +01:00
Steffen Mecke
8cec4b20e0 reduce code obfuscation 2015-11-17 02:14:08 +01:00
Steffen Mecke
1789bc06e9 monster faction may learn from experience 2015-11-17 02:13:57 +01:00
Enno Rehling
efc87a16e3 clarify dragon planning code (bug 2159) 2015-11-16 16:57:51 +01:00
Steffen Mecke
b34fca4633 hopefully fixing travis build (thanks, valgrind) 2015-11-16 14:40:18 +01:00
Enno Rehling
8e4b9283a3 release version 3.7.2 2015-11-16 14:34:30 +01:00
Enno Rehling
6237e6dfe2 Merge branch 'release-3.7' into develop 2015-11-16 14:30:31 +01:00
Enno Rehling
bf969879cd release version 3.7.1 2015-11-16 14:28:47 +01:00
Enno Rehling
d07f359acb fix a minor warning, get ready for 3.7 release 2015-11-16 14:12:51 +01:00
Steffen Mecke
4fdb9e86e7 test for follow ship error msg 2015-11-16 12:51:34 +01:00
Steffen Mecke
a6fe494ff4 error msg for movement should contain FOLLOW SHIP order
http://bugs.eressea.de/view.php?id=2161
2015-11-16 12:47:20 +01:00
Steffen Mecke
5326bbd9e4 refactored inside_building/building_is_active/active_building 2015-11-16 02:13:48 +01:00
Steffen Mecke
dcca3f1424 test and fix for market operation, bug2083
http://bugs.eressea.de/view.php?id=2083
2015-11-16 01:13:01 +01:00
Steffen Mecke
3a18384ddb overfull ships do not drift but take damage
http://bugs.eressea.de/view.php?id=2157
removed exploit:
ships more than 2 times over their ship type's capacity do not drift but take 30% to 100% damage
2015-11-15 12:43:05 +01:00
Steffen Mecke
01f4ebd4ce test for fixed value instead of range 2015-11-14 17:14:38 +01:00
Steffen Mecke
493b45c832 taxing without skill does not fail silently any more
http://bugs.eressea.de/view.php?id=2158
added configuration parameter for tax per level
2015-11-14 15:36:14 +01:00
Steffen Mecke
f9c2994de1 fixing memory bug 2015-11-13 15:52:32 +01:00
Steffen Mecke
477d69152f added tests for all kinds of syntax parameters 2015-11-13 00:57:14 +01:00
Steffen Mecke
4ab92e3caf fixed descriptions of spells with parameters (bug #2060+1867) 2015-11-13 00:57:14 +01:00
Steffen Mecke
f3972a2390 prepared test for nr_spell 2015-11-13 00:57:14 +01:00
Steffen Mecke
251126054e add missing NULL check to in_safe_building 2015-11-13 00:50:54 +01:00
Enno Rehling
5ef9b624ff Merge branch 'release-3.7' into develop 2015-11-12 18:11:21 +01:00
Enno Rehling
7fb5adc7af in_safe_building needs a test and some changes to logic
github issue #393 fixed
2015-11-12 17:55:39 +01:00
Steffen Mecke
e2b56cd04a fix morale change when region owner changes
http://bugs.eressea.de/view.php?id=2139
2015-11-12 16:09:26 +01:00
Enno Rehling
c5965fcd59 CID 22455 Logically dead code
github issue #359
2015-11-11 16:00:07 +01:00
Enno Rehling
972b8cee40 CID 22436 Ignoring number of bytes read
github issue #333
2015-11-11 15:55:39 +01:00
Enno Rehling
1949e8710d CID 22536: Resource leak (RESOURCE_LEAK)
github issue #388
2015-11-11 15:51:48 +01:00
Enno Rehling
fc73da4ae4 CID 22484 Explicit null dereferenced
github issue #386
2015-11-11 15:48:11 +01:00
Enno Rehling
3cd47bb8fa CID 22503 Negative array index write
github issue #387
I was pretty sure I had submitted this before. What is going on?
2015-11-11 15:48:09 +01:00
Enno Rehling
f69311b141 Merge branch 'develop' of github.com:eressea/server into develop 2015-11-11 15:15:30 +01:00
Enno Rehling
d11f8ead56 Merge branch 'release-3.7' into develop
Conflicts:
	src/buildno.h
2015-11-11 15:15:08 +01:00
Enno Rehling
4eb4ff40ac https://bugs.eressea.de/view.php?id=2155
monsters do not attack units inside a castle or watch
dragons do not attack guards
2015-11-11 14:36:56 +01:00
Enno Rehling
34c9958368 CID 22584 Result is not floating-point
github issue #326
chance of morale loss is 20-100 percent depending on loss of silver
2015-11-10 10:44:17 +01:00
Enno Rehling
edb862a8fc CID 22461 Division or modulo by zero
partial fix github issue #326
also fewer calls to rmoney
2015-11-09 20:10:02 +01:00
Enno Rehling
e14cc50252 CID 22522, 22520 Resource leak
helping coverity scan to understand this code
2015-11-09 20:05:55 +01:00
Enno Rehling
66e43caf9d CID 32303 Unchecked return value
appeasing coverity
2015-11-09 20:03:38 +01:00
Enno Rehling
32c777d428 add missing test file, try again 2015-11-09 19:46:01 +01:00
Enno Rehling
ea8721367a test and fix shock trigger.
https://bugs.eressea.de/view.php?id=2154
2015-11-09 19:43:51 +01:00
Enno Rehling
fed660987a CID 22519 et al (resource leaks)
make the failure case for get_spellbook a little slower, but make static analysis happy.
2015-11-09 19:16:20 +01:00
Enno Rehling
9ff6aa0d42 CID 22472 Division or modulo by zero
CID 22471 Division or modulo by zero
github issue #350
github issue #349
2015-11-09 18:06:11 +01:00
Enno Rehling
2e7a1a3ded CID 32208 Time of check time of use 2015-11-09 18:03:19 +01:00
Enno Rehling
4477785da0 first release candidate 2015-11-09 17:08:41 +01:00
Enno Rehling
82994e5fd1 version number increase for planned february release 2015-11-09 17:04:50 +01:00
Enno Rehling
28781dfcc8 Merge pull request #378 from ennorehling/develop
spells are allowed to have 0 hp
2015-11-09 16:45:08 +01:00
Enno Rehling
4790950daf spells are allowed to have 0 hp
https://bugs.eressea.de/view.php?id=2150
2015-11-09 16:39:30 +01:00
Enno Rehling
e9ed30f9db Merge pull request #377 from ennorehling/develop
Bug 2152: Parteitarnung
2015-11-09 16:30:57 +01:00
Enno Rehling
6d0bcb246d fix compilation and setting parameters to null 2015-11-09 13:55:09 +01:00
Enno Rehling
2aafa2b54f missing test file 2015-11-09 13:41:53 +01:00
Enno Rehling
ee02721c21 fix and tests for otherfaction attributes in E2
https://bugs.eressea.de/view.php?id=2152
2015-11-09 13:36:52 +01:00
Enno Rehling
bf8cc4cb08 trying to trace down an intermittently failing test on windows 2015-11-08 10:34:43 +01:00
Enno Rehling
318820fb00 eliminate use of test_create_world 2015-11-07 23:49:45 +01:00
Enno Rehling
43ab9e3304 Merge pull request #372 from TurnerSE/bug/#1859
Scheint ja zu funktionieren? Wenn etwas anderes kaputt geht, dann hat das nicht genug Tests, das ist auch eine Lehre. Und noch ist ja Zeit zum Release, um das zu merken.
2015-11-07 19:21:16 +01:00
Enno Rehling
9f94979b0d Merge branch 'bug/#2144' of https://github.com/TurnerSE/server into TurnerSE-bug/#2144 2015-11-07 18:53:19 +01:00
Philipp Dreher
6f3ea9b85a co is now first checked for validity before it is used for var-initialisation 2015-11-07 18:52:30 +01:00
Enno Rehling
e8a42b20dd don't use test_create_world 2015-11-07 18:47:55 +01:00
Enno Rehling
7ef18b1533 call cleanup 2015-11-07 18:45:41 +01:00
Enno Rehling
242efafd61 Fehlende Initializierung, github #375 2015-11-07 18:21:48 +01:00
Enno Rehling
26b6ae4e30 github issue #374
stick some assertions in natural_armor
refactor it for readability
eliminate a static memory leak
reset num_races to zero at end of test
2015-11-07 18:21:47 +01:00
Philipp Dreher
43b2e30c46 added initial cleanup 2015-11-07 15:18:23 +01:00
Philipp Dreher
4d622224aa added message cleanup 2015-11-07 14:47:14 +01:00
Philipp Dreher
5e85945c94 fixed the test so it finally behaves correctly 2015-11-07 14:27:48 +01:00
Enno Rehling
2f8dc29396 clean up item tests so they don't use test_create_world
fix intermittent skillpotion test
2015-11-07 13:52:18 +01:00
Philipp Dreher
663d947b2a New behaviour in case of low skill during building
Insufficient skill after hitting the next improvement stage is now
handled by leaving the for-loop and skipping to after-build-processing.
2015-11-06 21:04:35 +01:00
Philipp Dreher
b0a986e155 Revert "added a lua-test"
This reverts commit a452ad1517.
2015-11-06 20:57:19 +01:00
Philipp Dreher
a452ad1517 added a lua-test
New lua-test for the bug concerning the minskill for castle-stages.
(#1859)
2015-11-06 20:53:10 +01:00
Philipp Dreher
be5d81acd1 Revert "new test"
This reverts commit cb16315e7c.
2015-11-06 20:51:38 +01:00
Philipp Dreher
cb16315e7c new test
Added test for the handling of castles' buildstages and their individual
skillcaps.
2015-11-06 13:14:19 +01:00
Philipp Dreher
757bff87d3 slight code improvement
(test still not working as it should though)
2015-11-06 12:08:12 +01:00
Philipp Dreher
9e2d2b1560 corrected some mistakes in setup and cleanup of the test 2015-11-05 20:10:51 +01:00
Philipp Dreher
62805cdfa3 added new test to check the msg-behaviour 2015-11-05 15:16:52 +01:00
Enno Rehling
4ae94eaa3f fix compilation 2015-11-05 14:06:26 +01:00
Enno Rehling
40651d57cd 22583 Time of check time of use
avoid use of access()
2015-11-05 14:05:58 +01:00
Enno Rehling
5f99288af1 CID 22581 Time of check time of use
CID 22582 Time of check time of use
CID 30743 Time of check time of use
2015-11-05 13:27:38 +01:00
Enno Rehling
8a057f183f CID 22580 Time of check time of use
no need to check this first
2015-11-05 13:22:51 +01:00
Enno Rehling
797eee025d fix cb_insert comparison (new return value for success) 2015-11-05 13:01:48 +01:00
Enno Rehling
dcc819491f make it easier for coverity to understand this code (there are no resource leaks) 2015-11-05 12:47:34 +01:00
Enno Rehling
d553066590 CID 22548 Resource leak
github issue #334
2015-11-05 11:31:52 +01:00
Enno Rehling
fce3f63cc1 CID 22529 Resource leak
github issue #351
allocation call optimization for small units
2015-11-05 11:22:16 +01:00
Enno Rehling
530f729621 CID 22499 Missing break in switch
github issue #357
nice catch!
2015-11-05 11:18:39 +01:00
Enno Rehling
4c861aa40d CID 22496 Infinite loop
github issue #356
this is only relevant to old data files, it appears.
2015-11-05 11:17:31 +01:00
Enno Rehling
58c1d83c9e CID 22491 FORWARD_NULL
github issue #352
fals positive, rewriting code to appease coverity
2015-11-05 11:14:53 +01:00
Enno Rehling
62d7e9e944 CID 22473 Evaluation order violation
github issue #347
2015-11-05 11:11:02 +01:00
Enno Rehling
e16e669294 CID LAST_ROW 22455 Logically dead code
github issue #359
song of confusion was not selecting from fleeing units
2015-11-05 11:08:55 +01:00
Enno Rehling
2a7fc87656 CID 30742 Dereference before null check
CID 30741 ditto
2015-11-05 10:59:14 +01:00
Enno Rehling
0206ffbec6 accidentally inverted condition when fixing volcano attribute 2015-11-05 09:57:57 +01:00
Enno Rehling
91758d2e51 CID 22439 Unchecked return value from library 2015-11-05 09:00:52 +01:00
Enno Rehling
52edf15cec CID 22438 Unchecked return value from library 2015-11-05 08:57:56 +01:00
Enno Rehling
64e8d4b094 CID 22484 Explicit null dereferenced 2015-11-05 08:50:01 +01:00
Enno Rehling
744246ab34 CID 22498 Missing break in switch 2015-11-05 08:48:03 +01:00
Enno Rehling
ba69f72116 CID 22502 Argument cannot be negative
these curses macros are hard to decipher, I think this may be a kind of false positive because stdscr is always not-null?
2015-11-05 08:40:09 +01:00
Enno Rehling
f83e71e99a 22483 Dereference after null check 2015-11-05 08:36:32 +01:00
Enno Rehling
c68829029b 22485 Dereference after null check 2015-11-05 08:35:03 +01:00
Enno Rehling
b81e56d306 CID 22486 Dereference after null check 2015-11-05 08:32:21 +01:00
Philipp Dreher
d5f8448d7d changed the handling of an item the unit has no access to
Since the return of display_item() implies that the item, which is
definitely an item but not a potion at this point, is neither in the
inventory of the unit nor an item in the region or the faction's item
pool, the existing message 36 is now triggered in this case and the
previously conditional break is now done indepent of the outcome of
display_item, which shouldn't be critical (it's  an item so it can't be
a spell or a race).
2015-11-04 23:48:30 +01:00
Enno Rehling
b6190b5193 CID 22527 Resource leak 2015-11-04 19:20:34 +01:00
Enno Rehling
4d1f2327fe CID 22545: Leak of memory or pointers to system resources
github issue #335
volcano destruction was not causing a resuction in wages etc., because we forgot to add the attribute to the region.
2015-11-04 19:13:15 +01:00
Enno Rehling
c9f886078b CID 22452 'Constant' variable guards dead code
github issue #353 there is no a_fshidden attribute.
2015-11-04 19:08:45 +01:00
Enno Rehling
075de3c919 math is hard, typing is harder. bugfix. thank you, valgrind my friend. 2015-11-04 15:00:15 +01:00
Enno Rehling
67e2eafbcf add missing include (MSVC is not picky enough) 2015-11-04 14:55:13 +01:00
Enno Rehling
10f2dd2d6e CID 22497 Missing break in switch
make this code easier to read, favor if over switch
2015-11-04 14:52:10 +01:00
Enno Rehling
65f1574312 CID 22490 Dereference after null check 2015-11-04 14:27:38 +01:00
Enno Rehling
0271336428 CID 22494 Identical code for different branches 2015-11-04 14:24:44 +01:00
Enno Rehling
6e31751731 CID 22542 Resource leak
Fix broken error mesasge: "Die Einheit hat diesen Gegenstand zwar, aber sämtliche $int($reservation) $resource($resource,$reservation) sind reserviert."
2015-11-04 14:22:45 +01:00
Enno Rehling
0a5bd9d356 22480 Dereference after null check 2015-11-04 14:19:43 +01:00
Enno Rehling
eea0186601 22440 Unchecked return value from library
rewrite log rotation, check errors
2015-11-04 14:16:15 +01:00
Enno Rehling
30cc5405ae CID 22467: Division or modulo by zero
github issue #348
2015-11-04 12:59:03 +01:00
Enno Rehling
8ab4784e3f Merge branch 'coverity-scan' of https://github.com/ennorehling/eressea into ennorehling-coverity-scan
Conflicts:
	src/kernel/jsonconf.c
	src/kernel/save.h
	src/names.c
2015-11-04 12:44:45 +01:00
Enno Rehling
45b6de9c0d CID 22468 Division or modulo by zero 2015-11-04 12:30:46 +01:00
Enno Rehling
8bc44d82ed CID 22500 Argument cannot be negative 2015-11-04 12:29:51 +01:00
Enno Rehling
5887e8e48f CID 22434 Ignoring number of bytes read 2015-11-04 12:19:16 +01:00
Enno Rehling
b7b1ae43c2 CID 22493 Dereference after null check
CID 22458 Logically dead code
github issue #361
2015-11-04 12:16:52 +01:00
Enno Rehling
1a715d6736 CID 22493 Dereference after null check 2015-11-04 12:14:12 +01:00
Enno Rehling
657f5044e5 CID 22495 Identical code for different branches 2015-11-04 12:11:26 +01:00
Enno Rehling
9d4489972b CID 22447 Calling risky function
github issue #336
2015-11-04 12:09:45 +01:00
Enno Rehling
c090f8e1f4 CID 22441 Unchecked return value from library 2015-11-04 12:03:26 +01:00
Enno Rehling
d6cd1feb48 CID 22456: 'Constant' variable guards dead code
github issue #360
prayers sind ein feature, das nie fertig entwickelt wurde
2015-11-04 11:59:17 +01:00
Enno Rehling
978dd1400f CID 22465 Division or modulo by zero 2015-11-04 11:57:13 +01:00
Enno Rehling
a02b5f343e CID 22488 Dereference after null check 2015-11-04 11:55:04 +01:00
Enno Rehling
47f678d2a3 CID 22436 Ignoring number of bytes read, github issue #333 2015-11-04 11:51:19 +01:00
Enno Rehling
731dac3363 CID 22437 Unchecked return value from library
github issue #332
2015-11-04 11:45:13 +01:00
Enno Rehling
87a47e241c CID 22479 Dereference after null check
CID 22478 Dereference after null check
CID 22477 Dereference after null check
CID 22476 Dereference after null check
CID 22475 Dereference after null check
2015-11-04 11:23:57 +01:00
Enno Rehling
d4ff807c20 Merge pull request #364 from ennorehling/coverity-fixes
several smaller coverity fixes
2015-11-04 11:04:32 +01:00
Enno Rehling
024e4c45ca fix a bug introduced by f78fe842 (CID 22443) 2015-11-04 10:40:53 +01:00
Enno Rehling
c57668e6ee failing test for newly discovered storage problems 2015-11-04 09:48:51 +01:00
Enno Rehling
dedbd67d07 re-apply fix for CID 22551: dereference before null check (merge conflict) 2015-11-04 09:36:09 +01:00
Enno Rehling
0be8724093 CID 22475 Dereference after null check 2015-11-04 07:56:19 +01:00
Enno Rehling
04b5bc0c60 CID 22474 Evaluation order violation 2015-11-03 23:19:35 +01:00
Enno Rehling
7efda5f967 CID 22468 Division or modulo by zero 2015-11-03 23:18:56 +01:00
Enno Rehling
1f055b3175 CID 22466 Division or modulo by zero 2015-11-03 23:17:11 +01:00
Enno Rehling
103c480c91 CID 22465 Division or modulo by zero 2015-11-03 23:15:26 +01:00
Enno Rehling
1093a23d5a CID 22464 Division or modulo by zero 2015-11-03 23:14:06 +01:00
Enno Rehling
876e4122b1 CID 22463 Division or modulo by zero 2015-11-03 23:13:04 +01:00
Enno Rehling
fff40f048b CID 22462 Division or modulo by zero 2015-11-03 23:11:34 +01:00
Enno Rehling
e6973ff394 CID 22445 Unchecked return value 2015-11-03 23:05:44 +01:00
Enno Rehling
f78fe84216 CID 22443 Ignoring number of bytes read 2015-11-03 23:03:40 +01:00
Enno Rehling
870d42ccfe CID 22442 Unchecked return value from library 2015-11-03 23:01:09 +01:00
Enno Rehling
307c5ec85b CID 22435 Unchecked return value from library 2015-11-03 22:56:05 +01:00
Enno Rehling
0c5ef21c10 CID 22434 Ignoring number of bytes read
also potential missing  null-termination
2015-11-03 22:53:19 +01:00
Enno Rehling
154c2076a2 fixing bug 2149: projectile armor shall only protect against projectiles
https://bugs.eressea.de/view.php?id=2149
2015-11-03 19:12:40 +01:00
Enno Rehling
cfc31c6598 provide a failing test for issue 2149 2015-11-03 19:11:03 +01:00
Enno Rehling
f959f43f1e extensive tests for armor calculation 2015-11-03 18:59:09 +01:00
Enno Rehling
cc89e9c9da fix crash when rules do not define a unicorn item 2015-11-03 17:33:44 +01:00
Enno Rehling
15ff621cbb refactor: extract damage calculation from terminate
start writing tests (WIP)
2015-11-03 14:22:50 +01:00
Enno Rehling
91a6324a97 cleanup: functions do not need to be dereferenced with an & in C. 2015-11-03 13:30:34 +01:00
Enno Rehling
7e81b98fa4 Merge pull request #339 from TurnerSE/improvement/CID22481
Improvement/cid22481
2015-11-03 13:08:03 +01:00
Enno Rehling
4052f52472 Merge pull request #345 from TurnerSE/bug/#2145
Bug/#2145
2015-11-03 13:04:28 +01:00
Enno Rehling
ae28cbd7c3 Merge branch 'enhancement/airship_refactoring' of https://github.com/TurnerSE/server into TurnerSE-enhancement/airship_refactoring
Conflicts:
	src/spells/shipcurse.c
2015-11-03 13:02:42 +01:00
Philipp Dreher
5178bbd674 moved application of armor-penetration
halfed armor now includes the effect of natural armor, but not the
effect of magic armor
2015-11-03 00:05:55 +01:00
Philipp Dreher
bf42143b11 Revert "WIP new test for armor penetration"
This reverts commit dab8bdf7ef.
2015-11-03 00:01:10 +01:00
Philipp Dreher
0e83cc69d3 missed a spot... 2015-11-02 18:27:07 +01:00
Philipp Dreher
c2a8c32be0 forgot fwd-declaration of structs... 2015-11-02 18:08:35 +01:00
Philipp Dreher
07fd3dc970 formal correction 2015-11-02 18:06:19 +01:00
Philipp Dreher
30dce18697 small formal corrections 2015-11-02 17:58:14 +01:00
Philipp Dreher
96ccb046ab added test-suite for flyingship.c
some general testing of the spells functionality for future maintenance
purposes
2015-11-02 17:54:23 +01:00
Enno Rehling
63541dcc5d Merge pull request #338 from TurnerSE/improvement/test_skillpotion
Improvement/test skillpotion
2015-11-02 17:38:47 +01:00
Philipp Dreher
29173887b6 test_create_castorder can take spelllparameters now too 2015-11-02 17:09:16 +01:00
Enno Rehling
01078460bb Merge pull request #343 from ennorehling/feature/bug-2143-monsters-attack-buildings
bug 2143: monsters attack buildings
2015-11-02 16:40:32 +01:00
Philipp Dreher
0e8365c802 moved convenience function for convenience
the formerly static function test_create_castorder is now available for
general usage via tests.h/.c
2015-11-02 16:12:56 +01:00
Philipp Dreher
f550431118 small documentation correction 2015-11-02 15:59:29 +01:00
Enno Rehling
0b00bfecdf Merge pull request #342 from TurnerSE/bug/CID22449
Bug/cid22449
2015-11-02 15:55:44 +01:00
Philipp Dreher
8200fdb6c2 moved files for flyingship to subdir "spells" 2015-11-02 15:40:26 +01:00
Enno Rehling
f70b385bef clean up plan_monsters and make it a bit more readable 2015-11-02 15:27:01 +01:00
Enno Rehling
072bfd3912 testin building_is_active
testing multiple units in one building
2015-11-02 15:06:30 +01:00
Enno Rehling
4bf2509fb3 test inside_building vs. overflow
fix default building capacity (should be 1 per size)
2015-11-02 14:56:58 +01:00
Enno Rehling
42ae086def unit is inisde a building also when it was not paid for 2015-11-02 14:49:48 +01:00
Enno Rehling
24ff4c301d refactor: separate building_is_active from inside_building 2015-11-02 14:18:50 +01:00
Philipp Dreher
098abcc144 internal restructuring in flyingship 2015-11-02 14:01:38 +01:00
Philipp Dreher
abd6be475f that just slipped in the commit by accident... 2015-11-02 13:55:28 +01:00
Philipp Dreher
fe0d038bf3 moved more related functionality from shipcurse.c to flyingship.c 2015-11-02 13:39:06 +01:00
Philipp Dreher
2fe95f3d61 integration of the separate if-conditions and simplification of the loop 2015-11-02 13:12:19 +01:00
Philipp Dreher
bf779fc810 removed obsolete code 2015-11-02 13:06:14 +01:00
Philipp Dreher
d93305b180 moved flying ship functionality from move.c to flyingship.c 2015-11-02 00:35:32 +01:00
Philipp Dreher
6e7510b7e9 moved flying ship functionality from spells.c and shipcurse.c to flyingship.c 2015-11-02 00:32:56 +01:00
Philipp Dreher
3fa4c18e87 added files for new module "flyingship" 2015-11-02 00:26:23 +01:00
Philipp Dreher
b107ddadf5 added assert to check the faction-pointer 2015-11-01 21:43:18 +01:00
Philipp Dreher
491e5faed9 Revert "general check for sf->faction's validity"
This reverts commit f18b5ea7d2.
2015-11-01 21:40:06 +01:00
Philipp Dreher
f18b5ea7d2 general check for sf->faction's validity
The handling of an ally without a valid faction-pointer is now skipped
in favor of a logged error.
2015-11-01 18:54:29 +01:00
Philipp Dreher
91155f509c formatting: tabs --> spaces 2015-11-01 17:38:12 +01:00
Philipp Dreher
dab8bdf7ef WIP new test for armor penetration 2015-11-01 17:15:11 +01:00
Philipp Dreher
b6443e40ba reanimated dead code 2015-11-01 17:14:51 +01:00
Enno Rehling
0b098dede6 remove invalid tests. uninitialized locales do not have default words 2015-11-01 05:35:10 +01:00
Philipp Dreher
bebc92f82d expansion of the skillpotion-test
test now checks the effect of the potion on the week-counter of
sufficiently high skills
2015-10-31 19:03:15 +01:00
Enno Rehling
fbf483fb4e CID 22518: Parse warning (PW.PARAM_SET_BUT_NOT_USED) 2015-10-30 15:21:06 +01:00
Enno Rehling
21a2313e2a CID 22517: Parse warning (PW.PARAM_SET_BUT_NOT_USED) 2015-10-30 15:20:06 +01:00
Enno Rehling
a91a0f6a53 CID 22514: Out-of-bounds read (OVERRUN) 2015-10-30 15:17:39 +01:00
Enno Rehling
0da10ea490 CID 22513: Out-of-bounds read (OVERRUN) 2015-10-30 14:41:52 +01:00
Enno Rehling
674bc2b4c7 nope, the ticket is actually required. 2015-10-30 12:58:27 +01:00
Enno Rehling
e7ca5345d7 CID 22509: Dereference null return value (NULL_RETURNS)
potential problems at the edge of the map.
2015-10-30 12:57:07 +01:00
Enno Rehling
8f7f182c91 CID 22507: Dereference null return value (NULL_RETURNS)
checking fopen results
2015-10-30 12:55:30 +01:00
Enno Rehling
d6bc1c3119 CID 22506: Dereference null return value (NULL_RETURNS)
always check fopen success
2015-10-30 12:54:07 +01:00
Enno Rehling
204b4d6b93 CID 22505: Dereference null return value (NULL_RETURNS)
potential bugs at the edge of the map
2015-10-30 12:52:18 +01:00
Enno Rehling
1df0afc58a CID 22550: Dereference before null check (REVERSE_INULL) 2015-10-30 12:50:32 +01:00
Enno Rehling
1d204b12f1 CID 22549: Dereference before null check (REVERSE_INULL) 2015-10-30 12:49:37 +01:00
Enno Rehling
e1eb5098d4 CID 22554: Improper use of negative value (REVERSE_NEGATIVE)
I believe this was a false positive, but more asserts can never hurt.
2015-10-30 12:40:48 +01:00
Enno Rehling
93b7bacff5 CID 22552: Dereference before null check (REVERSE_INULL) 2015-10-30 12:37:27 +01:00
Enno Rehling
54304af182 allocate space for null terminator 2015-10-30 12:08:09 +01:00
Enno Rehling
7fa12ae3af CID 22556: String not null terminated (STRING_NULL)
add missing null-termination
2015-10-30 11:59:05 +01:00
Enno Rehling
68f8f0830e CID 22561: Copy into fixed size buffer (STRING_OVERFLOW) 2015-10-30 11:45:20 +01:00
Enno Rehling
be0563c1f0 CID 22560: Copy into fixed size buffer (STRING_OVERFLOW) 2015-10-30 11:43:45 +01:00
Enno Rehling
5d273e475e CID 22558: Copy into fixed size buffer (STRING_OVERFLOW)
bsdstring buffer size check
2015-10-30 11:41:59 +01:00
Enno Rehling
1fb04179dc CID 22557: Copy into fixed size buffer (STRING_OVERFLOW)
eliminate code duplication. bsdstring is better than libc strings.
2015-10-30 11:39:47 +01:00
Enno Rehling
ca7d25858e CID 22563: Copy into fixed size buffer (STRING_OVERFLOW)
bsdstring to the rescue, once again
2015-10-30 11:16:09 +01:00
Enno Rehling
0de6e5ecb8 CID 22564: Copy into fixed size buffer (STRING_OVERFLOW)
buffer sizes => bsdstring.h
2015-10-30 11:13:48 +01:00
Enno Rehling
df82a9795d CID 22565: Copy into fixed size buffer (STRING_OVERFLOW)
bsdstring to the rescue
2015-10-30 11:11:54 +01:00
Enno Rehling
b8d7fa5bcc CID 22567: Copy into fixed size buffer (STRING_OVERFLOW)
bsdstring replacements, again
2015-10-30 11:09:28 +01:00
Enno Rehling
51f66b8da8 CID 22568: Copy into fixed size buffer (STRING_OVERFLOW)
more bsdstring replacements
2015-10-30 11:06:24 +01:00
Enno Rehling
e69635d697 CID 22569: Copy into fixed size buffer (STRING_OVERFLOW)
bsdstring functions are the best.
2015-10-30 11:02:51 +01:00
Enno Rehling
4ee0f76927 CID 22570: Copy into fixed size buffer (STRING_OVERFLOW)
not only that, but strlcpy is the faster option here, too.
2015-10-30 10:57:52 +01:00
Enno Rehling
2f82cccea1 CID 22571: Copy into fixed size buffer (STRING_OVERFLOW)
replace strcat with strlcat
2015-10-30 10:55:06 +01:00
Enno Rehling
05ef6deb26 CID 22572: Copy into fixed size buffer (STRING_OVERFLOW) 2015-10-29 20:47:07 +01:00
Enno Rehling
4e431b41e2 CID 22575 (#2-1 of 2): Copy into fixed size buffer (STRING_OVERFLOW) 2015-10-29 20:45:36 +01:00
Enno Rehling
d3f7bd7b10 CID 22597: va_start/va_end mismatch 2015-10-29 20:43:37 +01:00
Enno Rehling
4eb6a89821 CID 26262: short and unsigned types are the devil, use int everywhere for fewer headaches 2015-10-29 20:39:44 +01:00
Enno Rehling
b3edd8dc5a anerror in this bugfix was found by a lua test. sweet! 2015-10-29 18:55:47 +01:00
Enno Rehling
3bf5ba14bb CID 26252: Memory - illegal accesses (BUFFER_SIZE_WARNING)
Calling strncpy with a maximum size argument of 5 bytes on destination array "code" of size 5 bytes might leave the destination string unterminated.
2015-10-29 16:51:39 +01:00
Enno Rehling
1a252bc994 CID 26253: Control flow issues (DEADCODE)
transformations gone wrong in previous commit
2015-10-29 16:50:55 +01:00
Enno Rehling
6113bc2144 CID 26254: Incorrect expression (DIVIDE_BY_ZERO)
magic should never be zero, but coverity doesn't know that.
2015-10-29 16:46:43 +01:00
Enno Rehling
7a01b58e8d CID 26255: Null pointer dereferences (FORWARD_NULL) 2015-10-29 16:43:09 +01:00
Enno Rehling
0a67d53264 CID 26256: (NULL_RETURNS) 2015-10-29 16:41:53 +01:00
Enno Rehling
833a1e70be CID 26257: Null pointer dereferences (NULL_RETURNS)
this test should never fire, but it shuts up coverity
2015-10-29 16:40:18 +01:00
Enno Rehling
9d9994811a CID 26258: (NULL_RETURNS)
deal with bad connection data, static analysis doen't knwo that we never have that.
2015-10-29 16:38:29 +01:00
Enno Rehling
b7dce8071c CID 26259: Memory - corruptions
I apparently don't know how strncat works.
2015-10-29 16:36:20 +01:00
Enno Rehling
59069ae342 CID 26260: Resource leaks (RESOURCE_LEAK) 2015-10-29 16:28:59 +01:00
Enno Rehling
db6e9444d6 CID 26263: Memory - illegal accesses (UNINIT) 2015-10-29 16:27:10 +01:00
Enno Rehling
5f4c31af1c bad variable reuse leads to gcc confusion 2015-10-29 12:04:52 +01:00
Enno Rehling
8b6da79984 64 bit compatibility, thank you gcc. 2015-10-29 11:32:04 +01:00
Enno Rehling
4f25831407 coverity scan CID 22576: arguments in wrong order
I believe that was a false positive, and will try to aquelch it by naming the arguments better.
2015-10-29 11:24:01 +01:00
Enno Rehling
4384183ab8 coverity scan CID 22504: argument cannot be negative
handle error cases for ftell, just because they could happen, I guess?
2015-10-29 11:20:09 +01:00
Enno Rehling
976b6aaea1 coverity CID 22593: write to pointer after free
github issue #324
use free_land where we need it.
2015-10-29 11:17:31 +01:00
Enno Rehling
c298b7fd74 coverity CID 22501 imroper use of negative value
explicitly use SK_MAGIC instead of a lookup. Faster, easier to reason about.
2015-10-29 11:06:25 +01:00
Enno Rehling
8675002e68 coverity scan CIDs 22540 22541 22546: resource leak
the calendar should only ever be initialized once, but based on static analysis, I agree that this was sloppy.
2015-10-29 09:56:53 +01:00
Enno Rehling
2372d3aacd coverity scan CID 22516: out-of-bounds write
potentially a bug with bad XML files? only matters if we have those, but we shouldn't
2015-10-29 09:49:26 +01:00
Enno Rehling
8b92003fff coverity scan CID 22487: dereference after null check
we don't use many differnt calendars, so this has never happened.
2015-10-29 09:43:51 +01:00
Enno Rehling
e27c4b4164 coverity scan CID 22457: logically dead code
the original TEACH_FRIENDS feature could not possibly have worked?
2015-10-29 09:39:33 +01:00
Enno Rehling
f4c32acd05 coverity scan CID 22515: out-of-bounds access
increase buffer to stop coverity false positive
2015-10-29 09:32:31 +01:00
Enno Rehling
55b3bfd90e coverity scan CID 22574: copy into fixed size buffer
zOrder *should* probably be big enough, but static analysis says safe is safe.
2015-10-29 09:28:02 +01:00
Enno Rehling
6ebfd33478 coverity scan CID 22503: negative array index write 2015-10-29 09:24:58 +01:00
Enno Rehling
c7aa8c89b1 coverity scan CID 22551: dereference before null check 2015-10-29 09:22:00 +01:00
Enno Rehling
4da658584c coverity scan CID 22511: dereference null return value 2015-10-29 09:20:58 +01:00
Enno Rehling
178a740ecf coverity scan CID 22573: copy into fixed-size buffer
in theory, all IDs in the game should be no longer than 4 characters, but coverity doesn't know this.
2015-10-29 09:17:23 +01:00
Enno Rehling
78899ca801 coverity scan CID 22433: buffer not null terminated, prefer strlcpy over strncpy 2015-10-29 09:06:53 +01:00
Enno Rehling
04bf07a526 coverity scan (multiple CID) is confuced about a_remove, trying to help it. 2015-10-29 09:06:52 +01:00
Enno Rehling
65429a12c3 coverity scan CID 22585, 22586: result is not floating point 2015-10-29 09:06:51 +01:00
Enno Rehling
70d4a6af03 coverity scan CID 22553: dereference before null check 2015-10-29 09:06:50 +01:00
Enno Rehling
e60b739ea4 coverity scan CID 22448: logically dead code 2015-10-29 09:06:48 +01:00
Enno Rehling
f72314e915 coverity scan CID 22451 (logically dead code) 2015-10-29 09:06:47 +01:00
Enno Rehling
6cccdec4a2 coverity scan CID 22454 (logically dead code) 2015-10-29 09:06:46 +01:00
Enno Rehling
0328e84c6c coverity scan CID 22555: sizeof not portable
wrong type in sizeof (pointer instead of struct)
2015-10-29 09:06:43 +01:00
Enno Rehling
185a2ee29c Merge pull request #321 from ennorehling/feature/fixme-base36-static
eliminate static variable leak and allocation from base36
2015-10-27 13:30:12 +01:00
Enno Rehling
f80f37def3 eliminate static variable leak and allocation from base36 2015-10-27 12:48:34 +01:00
Enno Rehling
feb915fe4a eliminate deprecated reporting function, static variable 2015-10-27 12:40:04 +01:00
Enno Rehling
e3572ef14e eliminate deprecated call 2015-10-27 12:40:04 +01:00
Enno Rehling
e23a7fc87d deprecate report_kampfstatus and implement a replacement function. 2015-10-27 12:40:04 +01:00
Enno Rehling
f2b0ba1ec6 eliminate find_spell warning for games where nobody is cursed, and you cannot summon igjarjuk 2015-10-27 12:40:03 +01:00
Enno Rehling
b771ec9aab test-only leak: do some json surgery and delete the entire tree from the export 2015-10-15 09:06:44 +02:00
Enno Rehling
47e925473e always use a macro, not magical constants 2015-10-15 08:40:52 +02:00
Enno Rehling
c9e7a76d9b minor leak: release memory held by curse_type structures 2015-10-15 08:38:43 +02:00
Enno Rehling
d4655ee88a leak: do not create new message_type objects in test_cleanup 2015-10-15 08:29:20 +02:00
Enno Rehling
d79745812a unit needs to be in a region or test_cleanup will not free it 2015-10-14 22:19:15 +02:00
Enno Rehling
467ce2a719 visual studio compilation fix 2015-10-14 22:09:11 +02:00
Enno Rehling
ef1a2dfc4f fixed a crash 2015-10-14 22:06:40 +02:00
Enno Rehling
3200dd2dc8 leak: free locale_data 2015-10-14 21:51:43 +02:00
Enno Rehling
b5455531e7 do not leak terrain.herbs 2015-10-14 21:37:27 +02:00
Enno Rehling
c04bda102b call free_order for each remaining reference 2015-10-14 20:56:09 +02:00
Enno Rehling
a3b27ad6d2 leak: remember to call test_cleanup 2015-10-14 20:49:30 +02:00
Enno Rehling
03ff8f612d leaks: remember to call test_cleanup 2015-10-14 20:48:01 +02:00
Enno Rehling
284a74c878 leak: deleting a config entry did not free its name 2015-10-14 20:45:43 +02:00
Enno Rehling
f740f2829a leak: in tests, when correct message_type doesn't exist, arguments should not leak 2015-10-14 20:41:42 +02:00
Enno Rehling
144aeb23ac leaks: call cleanup, free triggers 2015-10-14 20:29:07 +02:00
Enno Rehling
0f32630590 leak: release message in test 2015-10-14 20:22:51 +02:00
Enno Rehling
5018bbb0c0 correctly release messages created in test_merge_split 2015-10-14 20:21:38 +02:00
Enno Rehling
203b058166 avoid memory leaks when running with --list 2015-10-14 20:04:03 +02:00
Enno Rehling
47eee29813 correct argument count 2015-10-14 18:40:37 +02:00
Enno Rehling
5d192cb4c9 fix compile: gcc is extra picky about const char** conversions. 2015-10-14 18:38:10 +02:00
Enno Rehling
ba0828afd4 rather complex implementation of selective test running (CuTest does not have this feature). 2015-10-14 18:34:41 +02:00
Enno Rehling
e6f2864327 leak: duplicate assignment to building_type.name in tests 2015-10-14 14:10:35 +02:00
Enno Rehling
2abdba9e8a refactor free_messagelist, fix leak in test_merge_split 2015-10-14 14:08:50 +02:00
Enno Rehling
1c2922aafa leak: spell names and other strings need to be released. 2015-10-14 13:58:55 +02:00
Enno Rehling
5f9c2e13a8 I hate umlaut.c, it's basically magic, and the magic doesn't work right (it leaks memory from line 158) 2015-10-14 13:56:19 +02:00
Enno Rehling
cd9cb24b48 extend test_umlaut a bit, which doesn't trigger issue #316 2015-10-14 13:42:12 +02:00
Enno Rehling
78a8795305 there is a bug in umlaut.c, adding a FIXME.
this happens during test_umlaut, and valgrind detects it.
2015-10-14 13:33:10 +02:00
Enno Rehling
254cda86e8 short commands speedup wasn't working (never got assigned) 2015-10-14 13:20:27 +02:00
Enno Rehling
4fc5ac7740 there is a memory leak in test_long_order_hungry, but the root cause lies deeper 2015-10-14 12:51:45 +02:00
Enno Rehling
469d312339 leak: test must free castorder and call cleanup 2015-10-14 12:23:58 +02:00
Enno Rehling
bdf4834dc2 leak: region_owner data was never released 2015-10-14 12:22:37 +02:00
Enno Rehling
8e9e9c9c0f eliminate leak from duplicate call to test_create_buildingtype 2015-10-14 12:21:13 +02:00
Enno Rehling
ae3210ec87 pervious commit did not compile: small copy/paste error 2015-10-14 12:14:33 +02:00
Enno Rehling
2c659c1f47 memory leak: free building maintenance data 2015-10-14 12:13:05 +02:00
Enno Rehling
1fc5273f63 memory leak: bad call to register_buildings, replace test_create_world. 2015-10-14 12:09:35 +02:00
Enno Rehling
2b59922d8d memory leak: tests should call cleanup instead of trying to restore original state 2015-10-14 12:05:29 +02:00
Enno Rehling
acda22ae1b leak: free route at the end of the test 2015-10-14 12:03:19 +02:00
Enno Rehling
3cfb22876b memory leak: free params after test 2015-10-14 12:01:33 +02:00
Enno Rehling
20c9fb60dc release additional reference to recruit order 2015-10-14 11:58:54 +02:00
Enno Rehling
f0671aafda leak: some tests were leaking seen_factions becaus they don't call destroyfaction or render reports 2015-10-13 23:33:11 +02:00
Enno Rehling
66dd7e2320 eliminate unused variable warning (gcc) 2015-10-13 23:27:13 +02:00
Enno Rehling
a3210aaed7 leak: free per-locale cached order data (has additional refcount) 2015-10-13 23:25:44 +02:00
Enno Rehling
377b0d0305 leak: teardown build tests, free construction data 2015-10-13 23:09:50 +02:00
Enno Rehling
f4f038c23c leak: free strlist result of split_paragraph 2015-10-13 23:06:33 +02:00
Enno Rehling
24f1f82e93 release order reference used to create castorder, message 2015-10-13 23:02:01 +02:00
Enno Rehling
a6ca489d9a free multi-level construction correctly, avoid duplication 2015-10-13 22:56:16 +02:00
Enno Rehling
26f5b592bd leak: free construction materials 2015-10-13 22:41:54 +02:00
Enno Rehling
457465b4a2 memory leak: free message_list objects 2015-10-13 22:37:45 +02:00
Enno Rehling
333c27403f memory leaks: ship_type.construction, give_cmd return values 2015-10-13 22:34:22 +02:00
Enno Rehling
cd1467f668 cleanup: test_create_world is lazy 2015-10-13 22:31:03 +02:00
Enno Rehling
c70d987c09 memory leak: free weapon data 2015-10-13 22:27:43 +02:00
Enno Rehling
0facb386a8 memory leaks: call test_cleanup, free strlist, free message 2015-10-13 22:21:05 +02:00
Enno Rehling
d264c454b8 memory leak: building_type::construction was never released 2015-10-13 22:13:50 +02:00
Enno Rehling
1f1850dafc memory leak: always cleanup at the end of a test that creates game data. 2015-10-13 22:11:45 +02:00
Enno Rehling
7c2c520911 memory leak: at_travelunit contains a quicklist, needs custom cleanup code. 2015-10-13 22:09:41 +02:00
Enno Rehling
7e9c36b599 memory leak: free spell components and spells at exit 2015-10-13 22:02:58 +02:00
Enno Rehling
67135c8ea3 avoid triggering null-pointer assert 2015-10-13 21:50:23 +02:00
Enno Rehling
2f35246f8c memory leak: when freeing factions, also free their spellbooks 2015-10-13 21:47:45 +02:00
Enno Rehling
ff0bbce4f9 weird things happen when you name locales something else? 2015-10-13 21:30:10 +02:00
Enno Rehling
9f6fa5b948 Merge branch 'feature/tests-leaks' of github.com:ennorehling/eressea into feature/tests-leaks 2015-10-13 21:26:56 +02:00
Enno Rehling
6de8e4466a stop memory leak from function registry. 2015-10-13 21:26:48 +02:00
Enno Rehling
3741a19437 prevent memory leak of cJSON structures in tests 2015-10-13 21:21:31 +02:00
Enno Rehling
422476409c eliminate memory leak from locales 2015-10-13 20:58:03 +02:00
Enno Rehling
5c8a68e1de always call seen_done to eliminate memory leaks in tests. 2015-10-13 16:05:32 +02:00
Enno Rehling
7854684d8b fix memory leaks in all tests that create an order without calling free_order at the end. 2015-10-13 15:45:38 +02:00
Enno Rehling
96be12218e test rename with missing name (not crashing, error message) 2015-10-13 14:27:42 +02:00
Enno Rehling
6de604701d add some test coverage for name_cmd (not covering all error cases yet) 2015-10-13 13:56:58 +02:00
Enno Rehling
177f8f5288 re-enable a test that supposedly breaks on travis (find out why)
fix a potential null-pointer crash in rename_cmd
2015-10-13 13:32:27 +02:00
Enno Rehling
7e2364c296 test for actual piracy ship movement
refactor storm check, run less code when disabled
fix ship creation in tests
2015-10-12 19:40:20 +02:00
Enno Rehling
d252286f4c refactor: extract function parse_ids for readability 2015-10-12 18:54:47 +02:00
Enno Rehling
4c028bceac the early beginnings of a test for piracy
extract validation message from piracy_cmd
fix a SAIL/SWIM check inconsistency
2015-10-12 16:30:56 +02:00
Enno Rehling
dcf6c28b0e testing all the error cases for PIRACY 2015-10-12 13:27:39 +02:00
Enno Rehling
678169d7d4 add skeleton test suite for piracy 2015-10-12 11:54:59 +02:00
Enno Rehling
521519805d refactor piracy code into a module, separate from move. 2015-10-11 21:19:38 +02:00
Enno Rehling
936c201d0b Merge pull request #312 from eressea/master
pull latest changes from master into develop
2015-10-11 16:47:29 +02:00
Enno Rehling
6a074fd294 only disable MSVC2015 warnings in MSVC2015, do not break confuse compilers. 2015-10-11 14:39:51 +02:00
Enno Rehling
e8880db447 get the code to compile under vs2015 (disable warnings) 2015-10-11 14:39:43 +02:00
Enno Rehling
c47c9dbf64 add mail_cmd tests for FACTION 2015-10-11 12:54:27 +02:00
Enno Rehling
403b8a2e7e add mail_cmd tests for REGION 2015-10-11 12:44:22 +02:00
Enno Rehling
070ed1a941 clean up hastily written tests, eliminate duplicate code 2015-10-11 12:38:05 +02:00
Enno Rehling
9e49e10d11 Merge branch 'master' into develop
Conflicts:
	src/buildno.h
	src/kernel/unit.test.c
2015-10-10 22:55:29 +02:00
Enno Rehling
99c385412a fix crash in mail_cmd when order is missing a message 2015-10-10 22:50:15 +02:00
Enno Rehling
7f81cee36d Merge pull request #305 from ennorehling/feature/log-reduce
reduced log spam in cron emails
2015-09-28 12:27:04 +02:00
Enno Rehling
3eead446d0 reduce cron log spam 2015-09-26 22:42:22 +02:00
Enno Rehling
d153846769 test: ageing ship trails works as expected. cannot find a bug here.
Conflicts:
	src/move.test.c
2015-09-25 14:10:25 +02:00
Enno Rehling
f07802bab5 add a test to check that move_ship creates a trail when given a route
Conflicts:
	src/move.test.c
2015-09-25 14:09:22 +02:00
Enno Rehling
f018016feb rename hunt to follow_ship, because why was it ever called anything else? 2015-09-25 14:06:18 +02:00
Enno Rehling
ae513c5f23 Merge branch 'hotfix/bug-2138-familiarmage' of github.com:ennorehling/eressea into hotfix/bug-2138-familiarmage 2015-09-23 18:31:46 +02:00
Enno Rehling
1028539adb version number increase 2015-09-23 18:29:18 +02:00
Enno Rehling
84a92124bd Merge branch 'feature/bug-2053-attack-monsters' of https://github.com/ennorehling/eressea into ennorehling-feature/bug-2053-attack-monsters
Conflicts:
	conf/e3/config.xml
2015-09-19 13:35:53 +02:00
Enno Rehling
e217a4b550 age_unit accidentally returned AT_AGE_REMOVE (caused by a recent change to curse_age) 2015-09-14 22:58:12 +02:00
Enno Rehling
3a1444f378 backport (failing) at_familiarmage test from 3.7 branch 2015-09-14 17:38:58 +02:00
Enno Rehling
23a7ed59ac backport familiar skill test from 3.7 development 2015-09-14 17:17:29 +02:00
Enno Rehling
b0c79b9978 refactor some get_param lookups
kill unused global.functions.maintenance
2015-09-13 10:11:56 +02:00
Enno Rehling
90bcf30628 fix bad terrain definitions in E2 (string, not number: these values are used for dice throws).
clean up the jsonconf.c code for reading these a little bit, report more specific errors.
2015-09-13 09:46:40 +02:00
Enno Rehling
71c4cb53c0 add missing guard.h include everywhere, remove duplicate prototypes from config.h 2015-09-12 23:41:37 +02:00
Enno Rehling
dd9420fc38 move at_guard into guard module as well 2015-09-12 23:38:31 +02:00
Enno Rehling
3055f517dc move guard implementation into a module (WIP) 2015-09-12 22:53:54 +02:00
Enno Rehling
5f7b9129bc Merge branch 'master' into develop
Conflicts:
	tests/runtests.bat
2015-09-12 22:47:33 +02:00
Enno Rehling
a027139057 remove global variable verbosity in favor of static in main.c (use log_* functions everywhere) 2015-09-12 20:58:09 +02:00
Enno Rehling
06a04d0e20 fix logging for sp_igjarjuk, temporarily set log-levels for the game to error|warn|info
remove some code that accesses `verbosity` variable (todo: hide it more, fix logging)
2015-09-12 19:48:03 +02:00
Enno Rehling
63c983e197 Merge branch 'develop' of github.com:eressea/server into develop 2015-09-12 19:28:49 +02:00
Enno Rehling
c7a0fb5f28 development build is 3.7 2015-09-12 19:28:28 +02:00
Enno Rehling
44dd66f2fb Merge branch 'master' into develop 2015-09-12 19:27:56 +02:00
Enno Rehling
28f17b6a08 release version 3.6.3 2015-09-12 19:27:11 +02:00
Enno Rehling
7259a4b45e remove parse_main from xmlreader, everything superseeded by jsonconf 2015-09-12 18:16:23 +02:00
Enno Rehling
1e75255d51 allow disabling skills through json 2015-09-12 17:43:31 +02:00
Enno Rehling
a01955e06a disable features by name that are not keywords 2015-09-12 17:37:29 +02:00
Enno Rehling
c76b118fb8 eliminate game/order from XML data 2015-09-12 17:12:02 +02:00
Enno Rehling
44eb3a4f58 disable keywords through JSON configuration 2015-09-12 17:06:55 +02:00
Enno Rehling
32ff7c89bc Merge pull request #296 from ennorehling/feature/config-producexpchance
Bug 2137: calculating produceexp correctly
2015-09-12 16:52:55 +02:00
Enno Rehling
7906cdbcb6 do not read gamename from XML, read it from JSON only (two mechanisms for the same feature are too many) 2015-09-12 16:49:18 +02:00
Enno Rehling
d65e9aaf94 eliminate xml reading of produceexp chance 2015-09-12 16:42:02 +02:00
Enno Rehling
8a95ea0c00 speeding up produceexp_chance 2015-09-12 16:41:22 +02:00
Enno Rehling
9bdc811582 produceexp uses a json-configurable constant
make get_param_flt return a double, floats are for wimps.
2015-09-12 16:38:51 +02:00
Enno Rehling
68c448b3fb fix signature of callback 2015-09-12 16:29:57 +02:00
Enno Rehling
d1686849e0 refactoring: move produceexp into unit module, for want of a better one. add a bit of test coverage.
https://bugs.eressea.de/view.php?id=2137 - fix learning-by-doing with less than u->number people.
2015-09-12 16:25:47 +02:00
Enno Rehling
c704cd5784 release version 3.6.2 2015-09-12 15:41:25 +02:00
Enno Rehling
9563aa712f eliminate junk function 2015-09-12 14:16:18 +02:00
Enno Rehling
42f1030251 separate test script for E4:
even though it has mostly the same rules, it does not have xmastrees, and loads a different config
remove dead `inactivefaction` function, we have no use for the file it creates.
2015-09-12 14:10:08 +02:00
Enno Rehling
aa32cf190e remove xmlreader code for prefixes 2015-09-12 13:40:10 +02:00
Enno Rehling
09efd9c2a9 fix anything that uses the calendar module. opps. 2015-09-12 12:54:49 +02:00
Enno Rehling
13e1573611 moving the calendar module out of the kernel directory, it does not belong with the major game objects 2015-09-12 12:54:09 +02:00
Enno Rehling
47c95aee35 implement JSON prefixes. fix free_prefixes not resetting size (TODO: quicklist). 2015-09-12 12:49:12 +02:00
Enno Rehling
f0e255924f add a unit test for add/free prefixes. fix bad free_prefixes call site. 2015-09-12 12:41:04 +02:00
Enno Rehling
9f6b374056 add a (red) test for JSON prefixes. 2015-09-12 12:33:25 +02:00
Enno Rehling
44d982d210 free race prefixes when the game is done (small memory leak). 2015-09-12 12:29:42 +02:00
Enno Rehling
f1476c2167 refactoring: split out a module for race prefixes 2015-09-12 12:24:10 +02:00
Enno Rehling
bd51ac7dd7 eliminate terrain parsing from xmlreader.c, it's all in JSON now! 2015-09-11 22:46:47 +02:00
Enno Rehling
c57918ede0 replace XML terrains for E3 and E4 with JSON configuration 2015-09-11 22:43:08 +02:00
Enno Rehling
b4971dd651 replace all of the E2 terrains with JSON data (no more XML!) 2015-09-11 22:11:59 +02:00
Enno Rehling
7c4d18ec2d avoid an annoying division by zero when terrains are not fully initialized (size=0) 2015-09-11 21:31:59 +02:00
Enno Rehling
db4cb2618b transfer most core and all game-specific terrains for E2 from XML to JSON. 2015-09-11 21:14:10 +02:00
Enno Rehling
9df5799efd define core plain and ocean in JSON for E2. 2015-09-11 12:52:18 +02:00
Enno Rehling
a582c69523 finished and tested: terrains can be completely defined in JSON. 2015-09-11 12:27:45 +02:00
Enno Rehling
43bac506a4 fix bad size for calloc. 2015-09-11 12:25:28 +02:00
Enno Rehling
c707ff39b6 memory leak: properly free terrain_production objects 2015-09-11 12:17:35 +02:00
Enno Rehling
59e2c12605 completing the implementation of JSON terrains (WIP).
seeing a crash when trying to allocate a resource for stone in test_json_terrains.
2015-09-11 12:12:53 +02:00
Enno Rehling
8860244f1c Merge branch 'link-seen-duplicate' into feature/feature-json-terrains 2015-09-11 11:12:30 +02:00
Enno Rehling
d15d0cc0f4 remove unused xml_i function 2015-09-11 11:08:10 +02:00
Enno Rehling
cf08cdf3fb configuration type-fixes: int to bool where appropriate (possibly incomplete)
rename some rules to make it more obvious that they are flags or other integer values.
2015-09-11 10:04:08 +02:00
Enno Rehling
c5e14c85a6 read boolean json values
be smarter about reading number values that are integers
2015-09-11 09:17:07 +02:00
Enno Rehling
9bb2a625f9 fix xmlreader bug introduced by last commit (xpath->node not initialized) 2015-09-11 09:10:00 +02:00
Enno Rehling
1a7d6dd91d xmlreader no longer needs to parse settings, that's all in json now. 2015-09-10 23:29:18 +02:00
Enno Rehling
1969c165d3 allow settings in json configuration file
move E2 settings from XML to JSON
2015-09-10 23:16:17 +02:00
Enno Rehling
2b46c4c4a9 kill stray semicolon 2015-09-10 21:22:55 +02:00
Enno Rehling
f2b2dc2063 fix linux build, missing include 2015-09-09 16:48:24 +02:00
Enno Rehling
337aca9b3c remove region.donations, replace with a global list. 2015-09-09 16:47:09 +02:00
Enno Rehling
d29d38f710 refactor donations into a seaprate code module, add a basic test 2015-09-09 15:45:20 +02:00
Enno Rehling
60111282b3 make findunitr be O(1) instead of O(#r->units) 2015-09-09 13:29:58 +02:00
Enno Rehling
5faf642b9c use the same DISABLE_TEST macro everywhere. 2015-09-09 13:23:20 +02:00
Enno Rehling
6f212686f3 Merge pull request #287 from ennorehling/feature/issue-282-link-seen
eliminate duplicate call to link_seen
2015-09-09 12:41:14 +02:00
Enno Rehling
bf6f05f39d fix unused variable warning 2015-09-09 11:24:11 +02:00
Enno Rehling
cac22bcb02 Merge branch 'feature/issue-282-link-seen' of github.com:ennorehling/eressea into feature/issue-282-link-seen 2015-09-09 11:23:15 +02:00
Enno Rehling
f7c1efc287 memory error seems to be in test_write_flag (curse-hashing?), not in the new ones. 2015-09-09 11:22:35 +02:00
Enno Rehling
e5a92d6313 building on linux 2015-09-09 11:09:57 +02:00
Enno Rehling
65c39866e1 refactor: add a faction_add_seen function that also updates [first, last) interval.
add tests for add_seen.
disable test_faction_add_seen, looks like it needs a valgrind check?
2015-09-09 11:08:33 +02:00
Enno Rehling
7f9e84d68b fix neighbor seen_region collection. 2015-09-09 10:22:04 +02:00
Enno Rehling
42e51a0ec4 refactor looping through the hashtable of seen_regions into a map function. 2015-09-09 09:38:57 +02:00
Enno Rehling
3eabf082ac refactor prepare_report to extract prepare_seen, because we assume the bug is in there.
add a failing test for it to prove that bug is in here.
2015-09-09 09:04:59 +02:00
Enno Rehling
b551261b66 fix the bug that the unit test exposed. it was so simple!
still not fixing the integration test, though :-(
2015-09-08 16:35:18 +02:00