Enno Rehling
03def6ae5e
replace snprintf and the like.
...
you cannot trust _snprintf in MSVC (no zero-termination).
2017-01-26 17:57:21 +01:00
Enno Rehling
2422e63af2
never use strncpy, anywhere.
2017-01-26 17:57:21 +01:00
Enno Rehling
d71d5e413a
eliminate unnecessary strncpy use.
2017-01-26 17:57:21 +01:00
Enno Rehling
47c8b20f68
add a happy test for mt_new.
...
refactor to not use strncpy.
2017-01-26 17:57:21 +01:00
Enno Rehling
a4badc0a75
remove quicklist shim, use selist everywhere
2017-01-26 17:41:21 +01:00
Enno Rehling
d9213c8f25
WIP: still converting to clibs/selist
2017-01-26 10:12:12 +01:00
Enno Rehling
43b8ff1ea8
fix strdup compilications when compiling with gcc and autoconf.
2016-11-26 16:21:41 +01:00
Enno Rehling
e52cf75c59
remove autoconf.h from platform.h, fix lots of includes
2016-11-25 20:15:11 +01:00
Enno Rehling
ecd74c53f5
More PVS-Studio warnings eliminated.
2016-11-23 19:19:04 +01:00
Enno Rehling
ec4060cb9a
fix curse-vigour calculation math.
...
also fix a ton of small other niggles from pvs-studio.
2016-11-20 19:08:39 +01:00
Enno Rehling
9ac74ceecc
fix constant conversion error
2016-11-20 15:14:03 +01:00
Enno Rehling
ae951ee780
Merge branch 'develop' of https://github.com/ennorehling/eressea.git
2016-11-20 14:50:49 +01:00
Enno Rehling
55a0388eb2
fix truncated names that split a utf8 sequence.
2016-11-20 14:50:38 +01:00
Enno Rehling
7d874f1606
fix clang builds
2016-11-18 13:24:50 +01:00
Enno Rehling
a08563e846
Merge branch 'develop' of https://github.com/ennorehling/eressea.git
2016-11-17 22:10:53 +01:00
Enno Rehling
dc2452e2c1
config.h globals cleanup.
2016-11-17 22:10:41 +01:00
Enno Rehling
6c9e1fb345
more config.h removal.
...
freset/fset/fval must die!
2016-11-17 17:06:31 +01:00
Enno Rehling
d5218b99b8
do not include config.h from util (also, wasn't needed)
...
also remove it from monsters.
2016-11-17 10:55:23 +01:00
Enno Rehling
49e5b5b67e
gcc missing include
2016-11-14 23:19:28 +01:00
Enno Rehling
b48b80a1e9
verify errno in test_atoip
2016-11-14 22:21:32 +01:00
Enno Rehling
c512d180f8
prevent atoip setting errno on mac.
...
only call atoi when string starts with a digit
2016-11-14 22:15:52 +01:00
Enno Rehling
d28d3f4690
move read/write_items to item.c.
...
fix bad memset in attrib.test.c.
2016-11-14 01:00:48 +01:00
Enno Rehling
3cc719ba93
fix gcc build
2016-11-13 19:51:41 +01:00
Enno Rehling
0eaa750ef4
move read/write_attribs to attrib.h, too
2016-11-13 19:47:36 +01:00
Enno Rehling
11b122048b
reduce dependency on save.h
...
moving a_write* functions to attrib.h, which was most of the reason everyone and their mom include save.h
2016-11-13 19:40:38 +01:00
Enno Rehling
f63baddd51
use memmove, not memcpy.
...
fix unicode_trim for windows.
remove unused unicode_mkname.
2016-11-13 15:49:26 +01:00
Enno Rehling
e0add2275f
also remove trailing spaces.
2016-11-11 01:34:59 +01:00
Enno Rehling
97e91fd8eb
fix bad names.
...
trim leading whitespace and non-printable characters from existing
unit, region and faction names/descriptions.
2016-11-11 00:30:49 +01:00
Enno Rehling
7b412399b7
delete leading spaces from names.
2016-11-09 22:03:46 +01:00
Enno Rehling
f03e8f3b62
return an error code if the string had any characters removed.
2016-11-09 14:58:51 +01:00
Enno Rehling
7d79822aa4
fix missing nul-terminator.
2016-11-09 11:54:34 +01:00
Enno Rehling
f68fcf40a6
custom function to make "valid" names.
...
remove any non-printable characters from a string.
TODO: test with utf-8 values.
TODO: remove leading/trainling whitespace.
2016-11-08 22:54:47 +01:00
Enno Rehling
75422e1ba6
fix gcc conversion warnings
2016-10-09 10:07:05 +02:00
Enno Rehling
fadf591a32
gcc appeasement (overflow in constant conversion).
2016-10-02 13:19:39 +02:00
Enno Rehling
693f1be6d1
fix endless loop in cp1252 search (wrong sort)
...
fix indentation
additional testing
2016-10-02 13:12:47 +02:00
Enno Rehling
8728fccaec
fix an endless loop in unicode_utf8_to_cp437 for characters not in the table.
2016-10-02 12:46:07 +02:00
Enno Rehling
9baba00087
use mtype->key instead of repeated hashstring calls.
2016-09-11 21:29:42 +02:00
Enno Rehling
c352ab9f8e
move game-version information fom version.h to gamedata.h
2016-09-10 17:21:17 +02:00
Enno Rehling
d84ed1f89d
move static variable cleanup to kernel_done.
...
clean up some more.
2016-09-07 21:22:05 +02:00
Enno Rehling
dda845e2f4
free configuration data (valgrind calls it still-reachable leaks).
2016-09-07 20:46:41 +02:00
Enno Rehling
a5ce809f41
fix memory leak in umlaut.c with reference counting (sad).
2016-09-06 19:57:07 +01:00
Enno Rehling
b62fa64d8c
closer leak debugging
2016-09-05 20:05:36 +02:00
Enno Rehling
c525553c49
unused variable
2016-09-05 17:48:54 +01:00
Enno Rehling
fa6a3e377d
relocate the addtoken leak "test" to umlaut.test.c
2016-09-05 18:46:02 +02:00
Enno Rehling
19d490ce71
test_create_locale leaks memory.
...
adding a simple test that shows this (under valgrind).
2016-09-04 22:07:52 +02:00
Enno Rehling
a5b3fad67a
skeleton of a language test, try to find init_direction memory leak.
2016-09-04 20:27:36 +01:00
Enno Rehling
e7b93adb75
rearranging deckchairs on the HMS Random Numbers.
2016-09-04 17:04:41 +01:00
Enno Rehling
2ccd2c0c16
Merge branch 'develop' of github.com:ennorehling/eressea into develop
2016-09-04 10:47:40 +02:00
Enno Rehling
00c4c337ff
remove crypto submodule, stea mtrand from it
2016-09-04 10:47:21 +02:00
Enno Rehling
b5298f60bf
Merge pull request #552 from ennorehling/issue-551-description
...
issue #551 and some other tests
2016-09-02 15:43:08 +01:00
Enno Rehling
3a719226a2
Merge branch 'master' into develop
...
Conflicts:
src/buildno.h
2016-09-01 21:55:52 +02:00
Enno Rehling
3c1704e691
Merge remote-tracking branch 'upstream/develop' into develop
2016-08-31 18:51:29 +01:00
Enno Rehling
a08ad52809
Merge branch 'develop'
...
Conflicts:
src/util/log.c
2016-08-31 18:15:07 +02:00
Enno Rehling
24c877d974
reduce failing test to less code
2016-08-31 17:38:33 +02:00
Enno Rehling
8aec1c3e7f
narrowing down the memory leak in jsonconf.test.c, by adding a similar
...
test to umlaut.test.c that exhibits the same behavior in a simpler
setting.
2016-08-31 17:37:07 +02:00
Enno Rehling
afeea58999
fix include order
2016-08-30 21:22:32 +02:00
Enno Rehling
a1d56acfe6
missing include, I believe
2016-08-30 20:15:28 +01:00
Enno Rehling
2d1a13a811
death to static caches!
2016-08-30 07:51:05 +01:00
Enno Rehling
ef44a4534e
add a test for copying resources message arguments.
...
my plan is to add a new argument type for arrays of resources with fewer allocations.
2016-08-29 17:31:09 +01:00
Enno Rehling
2c5063095d
fixed: tests that try to create duplicate spells do not spam stderr.
2016-08-29 14:49:31 +01:00
Enno Rehling
2eb9b5c5ea
delete dead code (dbrace)
2016-08-29 13:49:39 +01:00
Enno Rehling
fd273848ae
add an assert_alloc macro for allocations that cannot fail.
2016-08-29 09:26:49 +01:00
Enno Rehling
3e47f02fc2
coverity CID 141509 Unchecked return value from library
...
Conflicts:
src/util/log.c
2016-08-13 10:18:42 +02:00
Enno Rehling
1735ec9eee
coverity CID 141509 Unchecked return value from library
2016-08-09 18:28:15 +02:00
Enno Rehling
238a0e22f2
Merge branch 'test-alliance' of https://github.com/ennorehling/eressea into ennorehling-test-alliance
...
Conflicts:
src/util/CMakeLists.txt
2016-08-08 08:46:09 +02:00
Enno Rehling
731238dfb1
support different editor codepages
2016-08-07 19:19:35 +02:00
Enno Rehling
5dcbb8a3f4
add a very simple tst for unicode comparisons
2016-08-07 10:28:09 +02:00
Enno Rehling
03a8b7383c
fix log_rotate warnings ( #529 )
...
* ignore file-not-found errors when trying to rotate logs.
I suspect this is faster and safer than testing existence.
* block rename warnings, part deux
2016-08-05 20:15:05 +02:00
Enno Rehling
36e1060fc7
turn maxsize assert into an error
...
fix log rotation on windows
2016-07-31 18:48:27 +02:00
Enno Rehling
eebdcf5d93
control log level from command line (with -l, like -v)
...
make newplayer.lua use the autoseed module, eliminate duplication
seeding new players is broken
Conflicts:
src/gmtool.c
src/main.c
src/util/log.c
src/util/log.h
2016-07-30 22:46:57 +02:00
Enno Rehling
87eafaeb99
remove all password hashing code
2016-07-13 19:10:22 +02:00
Enno Rehling
61acd40424
Merge pull request #512 from stm2/dragon_growl
...
Dragon growl
2016-06-11 23:16:23 +02:00
Steffen Mecke
c5014fd766
integrated Ennos suggestions for dragon growls
...
Dragons now growl 20% more elegantly!
2016-06-11 13:47:38 +02:00
Enno Rehling
394621956d
missing include, gcc fix
2016-06-07 21:51:56 +02:00
Enno Rehling
4414d7ef57
fix parse_token buffer overrun.
...
missing tests for parse_token.
this fixes http://bugs.eressea.de/view.php?id=2206
2016-06-07 21:47:09 +02:00
Enno Rehling
5535beed61
Merge branch 'master' into develop
...
Conflicts:
src/buildno.h
src/kernel/save.c
2016-05-29 11:13:19 +02:00
Enno Rehling
72d9f8adf0
For NMR purposes, count cursed factions like NPCs (i.e. not).
...
fix warnings in log tests
log whitespace cleanup
2016-05-29 10:58:49 +02:00
Enno Rehling
6148273d97
http://bugs.eressea.de/view.php?id=2210
...
fix deprecated attributes (at_key) yet again.
2016-05-28 20:26:59 +02:00
Enno Rehling
cdd7606f02
fixing the password saving test.
2016-05-20 22:38:18 +02:00
Enno Rehling
80716d0787
fix key-upgrade function (coverity CID 102076)
...
fix MSVC warning (strncpy)
2016-05-02 19:22:57 +02:00
Enno Rehling
c4d31d368e
Merge branch 'master' into develop
...
Conflicts:
src/buildno.h
src/util/log.c
src/util/log.h
2016-05-01 13:47:30 +02:00
Enno Rehling
f24b1c1cdc
fix multi-logging
2016-05-01 13:40:01 +02:00
Enno Rehling
41277ed5ee
prove that logging is broken (new test segfaults)
2016-05-01 13:39:25 +02:00
Enno Rehling
1fa1693119
test multiple loggers
2016-05-01 13:36:00 +02:00
Enno Rehling
354e609929
catalog missing test files in CMakeLists.txt
2016-04-10 13:22:51 +02:00
Enno Rehling
ae7d86dae0
just a little bit of refactoring
2016-03-11 21:36:10 +01:00
Enno Rehling
cdf6d3992e
memory leak: gamedata store was not released
2016-03-11 10:31:21 +01:00
Enno Rehling
10e67e2107
always free gamedata (this test uses two)
2016-03-11 09:45:39 +01:00
Enno Rehling
0f792e038f
memory leaks
...
- must free gamedata after close
- clear spellbook and free it
2016-03-11 09:43:16 +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
5fd4d5f30b
Merge pull request #491 from ennorehling/feature/data_version
...
eliminate global.data_version
2016-02-25 16:01:44 +01:00
Enno Rehling
e766b78345
Merge branch 'master' into develop
2016-02-25 11:06:15 +01:00
Enno Rehling
bb03517619
disable most password formats
2016-02-25 10:46:46 +01:00
Enno Rehling
98856a8e4b
CID 65491 double free
2016-02-24 11:54:24 +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
2d30d4cce6
trigger_type.read gets a gamedata object
...
github issue #479
2016-02-24 11:46:54 +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
7f6ced99b9
attrib.read gets a gamedata object (remove dependency on global.data_version)
2016-02-24 11:44:18 +01:00
Enno Rehling
d1fdd9a89c
fix failing storage test
2016-02-24 11:39:27 +01:00
Enno Rehling
45d09622cb
missing include errno.h
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
1e4b860a2e
some trivial assertions
2016-02-22 20:48:24 +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
9c10cc6b16
fix linux build
2016-02-13 13:56:49 +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
652136ee46
unused variable, kill
2016-02-09 16:32:01 +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
32d43820c2
Merge remote-tracking branch 'upstream/develop' into develop
2016-02-06 23:23:26 +01:00
Enno Rehling
80eb22b1e4
Merge branch 'master' into develop
...
Conflicts:
src/buildno.h
2016-02-06 23:19:49 +01:00
Enno Rehling
26a33e28ce
Merge branch 'feature/apache-md5' of https://github.com/ennorehling/eressea into ennorehling-feature/apache-md5
...
Conflicts:
src/util/password.c
src/util/password.h
src/util/password.test.c
2016-02-06 15:23:42 +01:00
Enno Rehling
bee97c002c
use apache implementation by default
2016-02-06 15:16:15 +01:00
Enno Rehling
d2d50cb23f
fix build, add test for new algorithm
...
Conflicts:
src/util/password.test.c
2016-02-06 15:15:04 +01:00
Enno Rehling
4c46d9d0ef
add the apache md5 implementation to valid password hash algorithms
...
Conflicts:
src/util/password.c
src/util/password.h
2016-02-06 15:14: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
217fbca656
missing include broke the gcc build
2016-01-31 21:39:28 +01:00
Enno Rehling
3e57b19d62
stop duplicate parsing of arguments
2016-01-31 21:36:01 +01:00
Enno Rehling
8f4e6475c7
complete redesign of the log library (almost finished?)
2016-01-31 19:54:49 +01:00
Enno Rehling
2b0a2750ba
null-pointer check (coverity result)
2016-01-17 19:03:30 +01:00
Enno Rehling
0e30f392c4
Merge branch 'feature/crypt-passwords' of https://github.com/ennorehling/eressea.git
2016-01-15 08:54:56 +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
09a0e806bc
gcc compilation fix
2016-01-14 17:29:20 +01:00
Enno Rehling
6c80bc52b5
generate a good-ish salt
2016-01-14 16:50:42 +01:00
Enno Rehling
8d05f4cc25
implement MD5 crypted passwords as default
2016-01-14 15:49:09 +01:00
Enno Rehling
3a8a05380b
fix gcc compilation warnings
2016-01-13 16:19:59 +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
b8a0c61fee
Merge branch 'feature/crypt-passwords' of https://github.com/ennorehling/eressea.git
2016-01-13 12:37:12 +01:00
Enno Rehling
f14ee2adaa
include the password module in the list of unit tests
2016-01-13 12:37:07 +01:00
Enno Rehling
58b0ad19d0
NULL needs a platform-dependent include
2016-01-13 00:06:06 +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
5187788f3c
pass the parent of an attribute into a_age and attrib_type::age
2015-12-16 22:18:44 +01:00
Steffen Mecke
703edb676c
facility to inject a non-random random generator
...
This should be handy for writing tests that make use of randomization.
2015-12-08 17:57:23 +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
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
f0a47321d6
reduce log spam
2015-11-21 21:49:33 +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
Enno Rehling
40651d57cd
22583 Time of check time of use
...
avoid use of access()
2015-11-05 14:05:58 +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
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
eea0186601
22440 Unchecked return value from library
...
rewrite log rotation, check errors
2015-11-04 14:16:15 +01:00
Enno Rehling
e6973ff394
CID 22445 Unchecked return value
2015-11-03 23:05:44 +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
d3f7bd7b10
CID 22597: va_start/va_end mismatch
2015-10-29 20:43:37 +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
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
f80f37def3
eliminate static variable leak and allocation from base36
2015-10-27 12:48:34 +01:00
Enno Rehling
144aeb23ac
leaks: call cleanup, free triggers
2015-10-14 20:29:07 +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
6de8e4466a
stop memory leak from function registry.
2015-10-13 21:26:48 +02:00
Enno Rehling
422476409c
eliminate memory leak from locales
2015-10-13 20:58:03 +02:00
Enno Rehling
5f7b9129bc
Merge branch 'master' into develop
...
Conflicts:
tests/runtests.bat
2015-09-12 22:47:33 +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
d15d0cc0f4
remove unused xml_i function
2015-09-11 11:08:10 +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
b631f539ce
simplify atoi36, it does not need to eat whitespace
2015-09-05 18:18:22 +02:00
Enno Rehling
5fc1587879
age_unit accidentally returned AT_AGE_REMOVE (caused by a recent change to curse_age)
2015-08-25 22:50:58 +02:00
Enno Rehling
5bc4f7f144
add some simple tests for writing travelthru information to the report, fix test that sets errno as a side effect (thanks, Microsoft!)
2015-08-18 17:08:02 +02:00
Enno Rehling
c8cbeea660
STRLCPY macro redefinition and fixes for gcc. work for monkeys.
2015-08-17 22:48:21 +02:00
Enno Rehling
7e64f3177d
refactoring: rewrite tests to use test_find_messagetype instead of assert_messages.
...
tests: add cleanup of message_types to reduce global state.
2015-08-17 19:36:28 +02:00
Enno Rehling
1806030baa
new all-in-one strlcpy and wrptr function
2015-08-17 19:28:05 +02:00
Enno Rehling
dcececf4fa
Debug: move errno testing closer to the report-writing, so we know which report caused the error.
...
Fix: wrptr gets the result from _snprintf, which is int, not size_t.
2015-08-17 16:17:08 +02:00
Enno Rehling
420574c7e4
add unit-test for casting spells, fix spell-casting (was looking for thisorder), all E3 tests pass again
2015-08-05 10:25:25 +02:00
Enno Rehling
009993f2f4
address some PVS comments
2015-07-21 09:01:11 +02:00
Enno Rehling
6ea859ecea
ignore PVS=-Studio files
2015-07-12 13:15:10 +02:00
Enno Rehling
7087c0e0ab
Update to latest submodules, fix iniparser and critbit.
...
I did this before, must have lost it in the merge. Crazy.
2015-07-12 10:38:01 +02:00
Enno Rehling
b8e17839a7
eliminate some spammy warnings.
2015-07-08 18:27:27 +02:00
Enno Rehling
76a9dd6741
Merge remote-tracking branch 'upstream/develop' into develop
2015-07-07 15:34:42 +02:00
Enno Rehling
e25d3c8ed1
Fix a bug reporting DETROY messages to the correct unit.
...
Add missing not-null assertions before accessing function parameters.
Eliminate all of the PVS-Studio warnings.
2015-07-07 00:49:12 +02:00
Enno Rehling
05ec74f9ec
annotate with finds from PVS Studio trial static analysis
2015-07-06 21:31:27 +02:00
Enno Rehling
ef4052b0f6
the outcome of a casual static analysis session.
2015-07-06 19:53:09 +02:00
Enno Rehling
c42227c9e4
Bug 1838: Giftwolken dauern nur eine Woche, erscheinen nicht im Report.
...
https://bugs.eressea.de/view.php?id=1838
- fix dc_age return value
- speed up curse reporting a little
2015-07-03 17:36:37 +02:00
Enno Rehling
3ba2b3d4d7
indentation fixes (tab->spaces)
2015-06-26 14:31:21 +02:00
Enno Rehling
9b7a4e813b
functional test for forced leave configuration.
...
functional test for forced leave after combat.
functional test for MAKE TEMP.
error handling for Lua function building.create().
reduce some errors to warnings.
initialize race.battle_flags correctly (when not created through XML).
re-initialize processor in case config has changed.
handle missing translation of combat status, with error message.
2015-06-19 13:17:01 +02:00
Enno Rehling
a5f056b4b6
re-enable an assertion that was commented out.
...
fix a size_t range warning, change error code for wrptr().
2015-05-24 14:01:37 +02:00
Enno Rehling
0ea0936156
Use default locale when missing a translation, only warn once.
...
https://bugs.eressea.de/view.php?id=2103
remove locale::fallback, it was never set anyhow (also, we have no good fallbacks).
2015-05-22 14:14:02 +02:00
Enno Rehling
72e041dd32
fix missing include
2015-05-18 09:04:05 +02:00
Enno Rehling
8e5fc28bfc
refactoring more of goodies.h into strings.h
2015-05-18 08:59:38 +02:00
Enno Rehling
70eda58604
Merge branch 'develop' of github.com:eressea/server into develop
...
Conflicts:
src/CMakeLists.txt
2015-05-17 17:52:41 +02:00
Enno Rehling
177d1c701f
Merge branch 'lua-test-framework' of https://github.com/badgerman/eressea into badgerman-lua-test-framework
...
Conflicts:
src/kernel/region.c
src/util/log.h
2015-05-17 17:39:10 +02:00
Enno Rehling
c4d1482250
signed/unsigned comparisons (VC warning only)
2015-05-15 20:56:43 +02:00
Enno Rehling
9d7a9cbe6a
add missing new header
2015-05-15 20:47:27 +02:00
Enno Rehling
df325b243a
enable stricter conversion checking for gcc < 4.9, fix code
2015-05-15 20:35:36 +02:00
Enno Rehling
1dc516ab50
reduce warning level on oldterrain() log, warn from caller (json_report) instead.
2015-05-15 07:59:06 +02:00
Enno Rehling
d2af6a2f88
fix -Wconversion in spells.c
2015-05-15 07:07:21 +02:00
Enno Rehling
fe29e29c31
fix -Wconversion for move.c
2015-05-15 06:43:47 +02:00
Enno Rehling
e2421b3fe7
make lua errors show up on stderr, always (log_fatal).
...
this could have been prettier. log.c could use some loving.
2015-02-23 02:47:08 +01:00
Enno Rehling
f9bced467d
fix a crash in rename_cmd
2015-02-08 10:33:45 +01:00
Enno Rehling
5e0c934c6f
indentation fixes for this new file
2015-01-30 22:30:11 +01:00
Enno Rehling
df5ab02689
Merge branch 'peasantgrowth_acceleration' of https://github.com/stm2/server into stm2-peasantgrowth_acceleration
2015-01-30 22:11:10 +01:00
Enno Rehling
c54cbfd472
fix copyright notice
2015-01-30 22:10:29 +01:00
Enno Rehling
abca25d1d5
fix indentation in every file
...
fix copyright date
remove vi ts=2 code
remove a couple of superfluous extern declarations
2015-01-30 20:37:14 +01:00
Steffen Mecke
a97b211e70
bit of testing, code improvements, formatting
2015-01-30 18:25:56 +01:00
Enno Rehling
9f542e081b
fix last commit, broke the gcc travis build.
2015-01-15 17:17:32 +01:00
Enno Rehling
490782e750
add some simple tests for messages, prior to any refactorings.
2015-01-15 16:40:19 +01:00
Steffen Mecke
51d52aaf7f
implementing a much faster version of peasant growth calculation
2015-01-15 02:53:15 +01:00
Enno Rehling
838cf3d938
try to allow visual studio to build with all warnings (/WAll) enabled.
2015-01-12 22:53:21 +01:00
Enno Rehling
23b8f2bc8a
call init_locales after parse_json from Lua, downgrade missing string warnings during that to DEBUG (because it's quite common not to have them).
...
also, these int to bool conversion warnings made a good point, even if I could not reproduce them.
2015-01-08 20:55:29 +01:00
Enno Rehling
5e10bc4093
wait, no. tests did not pass when that change was made (for good reason, I assume).
2014-12-31 13:19:44 +01:00
Enno Rehling
f524f23cd4
superfluous semicolons and other small stuff.
...
missing strings are an error, not a warning.
2014-12-31 13:17:54 +01:00
Enno Rehling
e8ad542430
more thorough cleanup of tokens.
2014-12-31 01:50:54 +01:00
Enno Rehling
e9c3a00f7d
it sucks that get_translations sometimes returns tokens, and sometimes critbit_trees. How is anyone supposed to free that correctly?
2014-12-31 01:29:10 +01:00
Enno Rehling
2fbb04140c
at_deprecated was causing a small memory leak.
2014-12-31 01:17:49 +01:00
Enno Rehling
89ce04a6c3
this obviously cannot be const, then. fix the build.
2014-12-30 00:02:27 +01:00
Enno Rehling
077a0aeeef
plug some new memory leaks
2014-12-30 00:00:57 +01:00
Enno Rehling
43351e03cd
parsing needs to return a static buffer if it has no argument
2014-12-29 07:44:00 +01:00
Enno Rehling
67881dfff4
parsing tokens when buffer is too small - skip the entire token. now with tests.
2014-12-24 15:55:55 +01:00
Enno Rehling
b27491eccd
move atoip out of config (small helper) and test it.
...
remove some unnecessary variables from laws.c
2014-12-23 09:23:37 +01:00
Enno Rehling
5ebf05f625
additional tests for the parser.
...
move more parsing code out of config.c
2014-12-22 16:45:56 +01:00
Enno Rehling
c8b9044f78
rename to gettoken, use more widely, add a basic test.
2014-12-22 16:28:17 +01:00
Enno Rehling
5cdc85f6bf
start to get rid of getstrtoken(), which uses an internal static buffer and causes horrible bugs when called multiple times.
2014-12-22 14:21:24 +01:00
Enno Rehling
da1d3c49c3
ongoing config.c cleanup: getid()
2014-12-18 07:09:22 +01:00
Enno Rehling
455b3dc90e
ignore obsolete "lua" attributes in ancient data files.
...
fix a small bug in the mechanism for reading deprecated attrib_types.
2014-12-13 22:08:57 +01:00
Enno Rehling
cd70b8684d
fix escape_string mmeory corruption error.
...
fix a number of small stuff that happens when loading very old data files (like 572).
2014-12-12 11:28:37 +01:00
Enno Rehling
81bfb598d0
refactoring modules, cleaning out the config.c kitchen sink.
...
- cansee_* rules to laws.c
- translations to language.c
- stealth to attributes/,
- rename build.h -> buildno.h
2014-11-01 12:09:56 +01:00
Enno Rehling
6bd52012c0
read keywords from json configuration, use German imperative forms.
2014-10-29 19:40:09 +01:00
Enno Rehling
f788f19f6c
fix tests that relied on translation structures being statically cached.
...
clean up static cache, add test for German imperative (WIP)
2014-10-23 16:14:01 +02:00
Enno Rehling
356697e44e
improve test for attrib::nexttype correctness.
2014-10-19 20:02:06 +02:00
Enno Rehling
eb1d73e2c2
basic test for tolower function.
2014-10-19 06:42:40 +02:00
Enno Rehling
7e1cec33a2
Remove unused gmcmd attributes.
...
use the at_deprecated feature that was built for this purpose.
remove final external dependency on a_free in the code.
2014-10-18 19:23:36 +02:00
Enno Rehling
a58afb9d15
added test for removal of atributes.
...
refactor existing tests a bit, free up memory.
2014-10-18 17:51:07 +02:00
Enno Rehling
b37e8ac138
add a test for attrib->nexttype.
...
fix gcc build.
2014-10-18 17:12:43 +02:00
Enno Rehling
74a6bd72c2
additional testing.
2014-10-18 14:16:26 +02:00
Enno Rehling
4527ffdda2
refactoring and tests for wormhole module.
2014-09-29 23:19:59 +02:00
Enno Rehling
3e829e2880
support for itoab with smaller bases and larger numbers.
...
also a missing English message (museum-related)
2014-09-29 18:32:12 +02:00
Enno Rehling
c0230d2662
In the game, there is only ever one special direction, and it is for the astral space.
...
less XML, more code.
cleaning up the special direction parsing a bit.
2014-08-28 19:50:38 +02:00
Enno Rehling
2211111b29
Remove a German-only piece of text, to reduce the footprint of fleets in the report a little.
...
Fix English score message in NR.
Small fixes to meet Visual Studio warning level 4.
2014-08-25 00:45:32 +02:00
Enno Rehling
a3037950ff
fix a bug in the escape_string function.
...
remove static return variable from escape_string.
add test coverage.
2014-08-24 23:58:31 +02:00
Enno Rehling
808f343e34
make getstrtoken() return null at EOL, kill init_tokens.
...
init_order all the things!
added a bunch of new assertions to cover for oversights.
added some new tests for order parsing.
2014-08-23 09:17:58 +02:00
Enno Rehling
59ccf23db6
Repair MAKE, which broke when I changed MAKE TEMP.
...
You can now also write MAKETEMP as one word, and we treat it that way.
Added unit test coverage for MAKE order parsing.
2014-08-17 14:47:39 +02:00
Enno Rehling
41d42fa248
localization of alliance status "ALL".
...
fix for https://bugs.eressea.de/view.php?id=1993
2014-08-16 03:07:37 +02:00
Enno Rehling
dafe71f4b8
micro optimizations.
...
removing a lot of mallocs through strdup by replacing getcommand calls with get_command, which takes a buffer. only one left.
removing mkname calls with a static buffer for keyword-tokens.
commit the schema file I had lying around.
2014-08-14 09:57:05 +02:00
Enno Rehling
9ca206ec3f
remove reference to thieves and spies from this spell for non-E2 games.
...
this fixes https://bugs.eressea.de/view.php?id=1548
2014-08-14 07:05:12 +02:00
Enno Rehling
3c2ae7ca93
preview script and logging cleanup
...
1. all log messages will be terminated with \n, whether the user provided
it or not.
2. remove a bunch of print() calls from scripts to reduce clutter
3. replace printf calls with log_* calls to reduce clutter
4. add the new release preview script
2014-08-11 12:04:12 +02:00
Enno Rehling
d9457a2488
rewrite of the Lua module system.
...
At this time, only E2 is working.
Fixing a lot of old code (monster is no longer id 0).
package.paths configured from eressea.ini
install directory configured from eressea.ini
moving building_action into a seaprate module (it's deprecated)
2014-07-26 22:52:25 +02:00
Enno Rehling
e44d4aa9b9
implemented a suggested change to RESERVE.
...
http://bugs.eressea.de/view.php?id=1675#c5240
new setting "rule.reserve.twophase" reserves from self first, before reserving from others.
fix a crash when trying to flush logs and there is no logfile.
2014-07-20 06:19:21 +02:00
Enno Rehling
4c4652667c
fix code to work with gcc, move init_locales() outside of util.
2014-07-17 15:16:57 +02:00
Enno Rehling
1500bcac70
REKRUTIERE RASSE funktioniert nicht (Bug 2012)
...
http://bugs.eressea.de/view.php?id=2012
init_locales must not be called before races have been configured.
make jsonconf initialize translations
handle missing strings in translations, log errors.
2014-07-17 14:38:56 +02:00
Enno Rehling
b21cb8f5c7
Simple test for rules.give (there are many more, can_give deserves a test to itself).
...
The more tests I write, the more I hate the infrastructure for them.
2014-07-05 23:06:51 -07:00
Enno Rehling
12e15978b8
read weight, capacity and flags of items
2014-06-25 08:00:09 -07:00