Commit Graph

1818 Commits

Author SHA1 Message Date
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