Commit graph

893 commits

Author SHA1 Message Date
Enno Rehling
be89aaeb83 Merge branch 'master' into develop
Conflicts:
	src/buildno.h
2016-03-26 22:28:14 +01:00
Enno Rehling
bc8c39f4bb fix message-crash https://bugs.eressea.de/view.php?id=2199
release version 3.8.7
2016-03-26 22:09:21 +01:00
Enno Rehling
108b4404d2 Merge pull request #502 from ennorehling/feature/refactor-study
refactor study.c
2016-03-26 14:53:26 +01:00
Enno Rehling
98a3b31953 cfindhash is gone 2016-03-25 21:51:49 +01:00
Enno Rehling
87b09cd3c6 refactor tests to use test locale where possible 2016-03-24 13:01:47 +01:00
Enno Rehling
aba0be505e refactor many tests to use the test locale instead of building their own 2016-03-24 13:01:47 +01:00
Enno Rehling
f97b6c9821 bug: learn_skill was not learning the right skill
refactor: further reduce learn_skill_depr usage
2016-03-24 13:01:42 +01:00
Enno Rehling
0464fb629a remove some dead declarations 2016-03-24 13:01:41 +01:00
Enno Rehling
c91da12883 refactor demon_skillchange to use learn_skill
Also extracting it into the study module. No idea yet how I am going to sense this for a test, so the test currently does nothing.
2016-03-24 12:59:50 +01:00
Enno Rehling
cae966f4fe nextborder wurde nicht gelesen, wird aber gebraucht 2016-03-13 09:49:04 +01:00
Enno Rehling
637054bc22 memory leak: clean up mstream after test 2016-03-11 11:33:45 +01:00
Enno Rehling
b81f9db074 memory leak: free race->parameters 2016-03-11 11:31:05 +01:00
Enno Rehling
c9e524d161 memory leak: test_group_readwrite leaks an attrib
- groups were not clearing attribs when they were destroyed.
- new critbit module fixes leak in cb_erase
2016-03-10 22:30:19 +01:00
Enno Rehling
7e98384542 fix some memory leaks
- t_free does not free
- free_factions frees the wrong list
- cleanup after attrib test
2016-03-10 13:27:08 +01:00
Enno Rehling
d43265f937 a new test for the happy case of a working academy
dependency injection for learn_skill
memory leak fixes (triggers, armor)
2016-03-09 23:20:05 +01:00
Enno Rehling
02cfacd7f8 refactorings
- learn_skill from unit.c to study.c
- add academy.c module
2016-03-09 14:52:50 +01:00
Enno Rehling
3d5c7ba8fb refactoring: move produceexp from unit.c to study.c 2016-03-09 14:50:54 +01:00
Enno Rehling
2b62747718 fix datafile reading problems for versions 350 and 351 2016-03-09 14:50:03 +01:00
Enno Rehling
197241df0d fix datafile reading problems for versions 350 and 351 2016-02-29 16:18:14 +01:00
Enno Rehling
fcc846da95 all of the easy external file tests are eliminated 2016-02-26 20:07:51 +01:00
Enno Rehling
5f923295e6 remove datafiles from save.test.c
this should fix intermittent tests on windows.
2016-02-26 19:49:58 +01:00
Enno Rehling
63408501b9 convert another test to read_/write_game 2016-02-26 19:01:28 +01:00
Enno Rehling
3c272fd53f fix reading and writing curses from test (crash)
fix read_game/write_game incomaptibility.
2016-02-26 17:54:25 +01:00
Enno Rehling
ce867af34f this is a static variable, and it is bad 2016-02-25 23:11:44 +01:00
Enno Rehling
81a2dd9d21 extract read_game and write_game (take a gamedata argument, not filenames) 2016-02-25 19:12:38 +01:00
Enno Rehling
5fed36903c some drmemory fixes
some tests leaked.
current test_eressea reports:
     41 unique,    41 total,   3778 byte(s) of leak(s)
    120 unique,   270 total,   5615 byte(s) of possible leak(s)
2016-02-25 10:16:50 +01:00
Enno Rehling
db852a05fd eliminate global.data_version completely 2016-02-24 11:58:05 +01:00
Enno Rehling
d48d9a25e0 forward-declare struct gamedata 2016-02-24 11:54:23 +01:00
Enno Rehling
8a9d617aa3 read_referernce takes a gamedata object.
with all the trimmings that requires,
this is for github issue $479
2016-02-24 11:53:22 +01:00
Enno Rehling
2e41c4972c read_spellbook, use gamedata.version
github issue #479
2016-02-24 11:48:46 +01:00
Enno Rehling
21aee8ece8 remove global.data_version where gamedata.version is available
github issue #479
2016-02-24 11:47:46 +01:00
Enno Rehling
73a6b96bc7 remove global.data_version from border.read
remove global.encoding
github issue #479
2016-02-24 11:44:19 +01:00
Enno Rehling
3e584245c0 attrib.read gets a gamedata object
stop using global.data_version
for github issue #479
2016-02-24 11:44:19 +01:00
Enno Rehling
7f6ced99b9 attrib.read gets a gamedata object (remove dependency on global.data_version) 2016-02-24 11:44:18 +01:00
Enno Rehling
775bbe7ea6 refactor another test to not create files. 2016-02-24 11:39:24 +01:00
Enno Rehling
ec3839fb9f rewrite intermittent test to use memory stream. 2016-02-24 11:39:23 +01:00
Enno Rehling
6ca81646eb extract gamedata into a separate file. 2016-02-24 11:38:09 +01:00
Enno Rehling
e6f3dc8b85 Merge branch 'master' into develop
Conflicts:
	scripts/run-turn.lua
	src/buildno.h
	src/kernel/group.c
	src/kernel/save.c
	src/kernel/save.test.c
	src/kernel/version.h
	src/util/password.c
	src/util/password.test.c
	tests/run-turn.sh
2016-02-23 10:47:33 +01:00
Enno Rehling
1bb215dd52 Merge remote-tracking branch 'upstream/master'
Conflicts:
	src/kernel/save.c
	src/triggers/createunit.c
2016-02-23 08:35:31 +01:00
Enno Rehling
1e4b860a2e some trivial assertions 2016-02-22 20:48:24 +01:00
Enno Rehling
370338736c gcc is picky, fix gcc warnings 2016-02-22 20:47:06 +01:00
Enno Rehling
7fe07439f5 fix write_faction_reference, check for f->alive in other places
TODO:
1. I added some new TODOs
2. What happens to morale when region owners die?
3. Needs tests
2016-02-22 20:47:06 +01:00
Enno Rehling
6b1367dff1 fix gcc build 2016-02-22 15:48:43 +01:00
Enno Rehling
4f01d7041f Merge branch 'upstream-master'
Conflicts:
	src/kernel/save.test.c
	src/kernel/version.h
2016-02-22 08:55:46 +01:00
Enno Rehling
b09c6974c6 revert back to plaintext passwords, crypting isn't working 2016-02-21 17:22:43 +01:00
Enno Rehling
2c82ddd4d1 rename to password_encode, streamline tests
Conflicts:
	src/kernel/save.c
2016-02-21 16:03:42 +01:00
Enno Rehling
535a864ffe bcrypt hashes implementation, not activated yet. 2016-02-21 15:59:39 +01:00
Enno Rehling
4bf282bdd7 Merge branch 'release-3.7.11' into upstream-master
accidentally added a test that fails for the currently broken passwort-crypting

Conflicts:
	scripts/tests/e3/rules.lua
	src/attributes/reduceproduction.c
	src/building_action.c
	src/buildno.h
	src/kernel/region.c
	src/kernel/save.c
	src/kernel/save.test.c
	src/kernel/version.h
	src/laws.c
	src/magic.c
	src/magic.h
	src/wormhole.c
2016-02-21 11:01:50 +01:00
Enno Rehling
dd94771ed8 test password reading and writing for BADCRYPT_VERSION (requires external file) 2016-02-21 10:25:18 +01:00
Enno Rehling
9ac05666ea add a test for succesful read/write of password
TODO: do this for different datafile versions (BADCRYPT, etc)
2016-02-21 10:10:26 +01:00
Enno Rehling
1682b3d583 fix off-by-one error 2016-02-20 22:23:19 +01:00
Enno Rehling
1b28beeaa1 fix off-by-one error when analyzing passwords.txt (crash E3 and E4
today)
2016-02-20 21:43:01 +01:00
Enno Rehling
8054a145cc hack to read passwords from an external file 2016-02-20 18:21:39 +01:00
Enno Rehling
fc86de85f1 resolve a TODO, make attribute (and data) a little bit smaller. 2016-02-20 16:50:11 +01:00
Enno Rehling
33d1521bfd pass the parent of an attribute into a_age and attrib_type::age 2016-02-20 16:50:04 +01:00
Steffen Mecke
22367249db fix morale change when region owner changes
http://bugs.eressea.de/view.php?id=2139

Conflicts:
	scripts/tests/e3/castles.lua
2016-02-20 16:42:18 +01:00
Enno Rehling
29c9e719da eliminate plane.watchers feature
. we don't use them anywhere
. they have no tests
. they crash readgame when watchers have died
2016-02-18 08:48:54 +01:00
Enno Rehling
57085ea47b gcc fix, disable test properly
TBD:plane.watchers
2016-02-18 08:11:39 +01:00
Enno Rehling
9f62e74a37 add a test to check that destroyfaction updates the alliance leader.
clean up save.test.c a bit.
disable failing test temporarily.
2016-02-17 14:06:59 +01:00
Enno Rehling
a6fe697c7a tests for read/write of triggers that reference factions, with bugfixes. 2016-02-17 13:55:48 +01:00
Enno Rehling
325a0ccbf1 write a test that proves the bug in turn 966 2016-02-17 09:24:19 +01:00
Enno Rehling
4050f994a4 fix write_faction_reference, check for f->alive in other places
TODO:
1. I added some new TODOs
2. What happens to morale when region owners die?
3. Needs tests
2016-02-16 07:30:26 +01:00
Enno Rehling
54e4b7a508 E2 turn 966 desaster: code was writing a bad datafile 2016-02-13 22:07:51 +01:00
Enno Rehling
40530f2066 rename to password_encode, streamline tests 2016-02-12 08:33:08 +01:00
Enno Rehling
c0c6d19be2 bcrypt hashes implementation, not activated yet. 2016-02-12 07:16:45 +01:00
Enno Rehling
87aa7c887e fix build 2016-02-09 14:08:36 +01:00
Enno Rehling
1201a6b739 unused variable, bad version check 2016-02-09 07:06:07 +01:00
Enno Rehling
0189111876 update key attribute api
prepare to replace at_key. do not return the internals. add basic test.
2016-02-09 06:43:19 +01:00
Enno Rehling
abc3caa6d1 optimized storage of attribs.
save the hash instead of the name and save a few bytes.
2016-02-09 00:28:23 +01:00
Enno Rehling
7b4b879cc1 quick addition to a_removeall
additional testing for attributes
2016-02-06 10:56:08 +01:00
Enno Rehling
8a3bb35987 eliminate global log_flags, revert the mode arguments for fopen.
turns out that text is default, and windows hates it if I open a binary file without 'b'
standardize on using join_path to create filenames
(use backslash on windows, even though fopen doesn't seem to care).
2016-02-05 23:10:05 +01:00
Enno Rehling
d0f8723ffb refactoring: eliminate a_findc, and too much const-fuckery 2016-02-01 17:31:03 +01:00
Enno Rehling
b3db14465e fix logic error in json_buildings 2016-02-01 13:59:35 +01:00
Enno Rehling
85010e5358 seems like there is a problem opening files with the optional 'b' mode, so remove it everywhere? 2016-02-01 12:29:41 +01:00
Enno Rehling
2f2bbb16ab remove wild mkdir calls all over the code, catch EEXIST errors
use join_path more consistently
fix a test that's intermittent on windows because fopen(..., "wb") fails, why?
2016-02-01 09:26:24 +01:00
Enno Rehling
09ae3d8993 Merge branch 'feature/issue-462-log-test-errors' of https://github.com/ennorehling/eressea into ennorehling-feature/issue-462-log-test-errors
Conflicts:
	src/magic.test.c
2016-01-31 21:58:16 +01:00
Enno Rehling
c08235693d Merge branch 'master' into develop
Conflicts:
	src/buildno.h
	src/kernel/item.c
	src/kernel/region.c
	src/laws.c
2016-01-30 23:09:02 +01:00
Enno Rehling
c557778731 fix https://bugs.eressea.de/view.php?id=2183 2016-01-30 23:04:41 +01:00
Enno Rehling
73f16d5bb6 adding a join_path function to try and narrow down misbehavior. 2016-01-29 19:11:48 +01:00
Enno Rehling
9bf1059d8a trying to make tests not throw out so many ERROR log mesages, commenting on some of them. 2016-01-29 17:49:27 +01:00
Enno Rehling
729c4ceea1 increase error-logging from unit tests.
suppress some unrelated errors.
2016-01-28 16:00:36 +01:00
Enno Rehling
91f894b290 teleport.c is the astral space implementation, and it is not one of the core concepts, so move it out of the kernel/ directory 2016-01-28 12:25:16 +01:00
Enno Rehling
fa130d9ce5 make all the rset-asserts look the same 2016-01-24 14:57:36 +01:00
Enno Rehling
cc4367f1b7 borken merge fix 2016-01-24 14:55:43 +01:00
Enno Rehling
a66e81e90d Merge branch 'master' into develop
Conflicts:
	src/buildno.h
	src/kernel/region.c
2016-01-24 14:55:05 +01:00
Enno Rehling
a6b15813ed relax strict assertion (should be allowed to set ocean to 0 peasants) 2016-01-24 14:45:46 +01:00
Enno Rehling
023686fab2 add a liberal sprinkling of assertions to catch negative peasants bug 2182 2016-01-24 14:35:46 +01:00
Enno Rehling
3d7b22fa21 avoid crashing because of bug 2182 2016-01-24 14:31:24 +01:00
Enno Rehling
76475b9bf7 add a little extra randomness to the seed salt (still bad).
remove dead prototype code from faction.c
2016-01-15 08:01:12 +01:00
Enno Rehling
8d05f4cc25 implement MD5 crypted passwords as default 2016-01-14 15:49:09 +01:00
Enno Rehling
c3da0cd42d as long as we use no encryption, all tests pass. 2016-01-13 16:16:02 +01:00
Enno Rehling
799514bf40 implement md5 password hashing (untested)
disable test for case-insensitive password test
fix faction/checkpasswd test
2016-01-13 14:41:09 +01:00
Enno Rehling
54d25e91dd add a new password module
start adding password hashing logic (WIP)
does not yet pass all tests
2016-01-12 23:52:30 +01:00
Enno Rehling
b6d44410b7 make the password pseudo-private to faction.c 2016-01-12 06:46:51 +01:00
Enno Rehling
dc6cc41d2d additional warnings 2016-01-12 02:27:22 +01:00
Enno Rehling
19390dd8e2 log a warning when passwords would fail for being case-sensitive.
add a test to enforce the status quo, for now.
2016-01-12 00:52:42 +01:00
Enno Rehling
fadc92ee52 do not leak memory for factions that have died. 2016-01-11 18:17:24 +01:00
Enno Rehling
20063e0e0e fix errors in the order of cleanup 2016-01-11 18:03:53 +01:00
Enno Rehling
04e2fb73c7 fix test of allies status after destroying a faction 2016-01-11 15:08:36 +01:00
Enno Rehling
50eba2d308 I don't really believe that this is going to work, but let's see where it fails. 2016-01-11 14:59:25 +01:00