Commit Graph

1146 Commits

Author SHA1 Message Date
Andrew Pamment
38ace58668 fix build script 2018-10-10 11:22:38 +10:00
Andrew Pamment
f70565325e fix bug in new ptr vector append 2018-10-10 11:12:04 +10:00
Andrew Pamment
5e797ed2c3 change egcc to cc for FreeBSD 2018-10-10 10:36:24 +10:00
Dan Cross
f74c418f47 clang-format: Minor whitespace issues.
These are entirely my fault, sadly.

Signed-off-by: Dan Cross <patchdev@fat-dragon.org>
2018-10-10 10:26:48 +10:00
Dan Cross
54093060cb More cleanups.
More cleaning up construction of arrays of things.
Introduce a utility function called, `split_on_space`
that tokenizes a string on a space character; use
it in most places where `strtok()` had been called.

More use of the ptr_vector type.  Introduce a utility
function to get access to the pointers without consuming
the vector; this is used in the files code.

Signed-off-by: Dan Cross <patchdev@fat-dragon.org>
2018-10-10 10:25:47 +10:00
Dan Cross
540e359080 Cleanups and pointer vectors.
A repeated pattern in Magicka is to append to dynamically
sized arrays via malloc()/realloc().  Introduce the notion
of a "pointer vector": that is, a growable vector of
pointers, that can be reused to implement that logic more
safely and efficiently (this implementation uses power-of-two
growing).

Many malloc()/realloc() calls were not checked; these
assert() that the return value from realloc() is not NULL.

Add a method to consume the pointer vector: that is, realloc()
it to the current length and return the underlying pointers.

Make the `fmt` argument to dolog() const.
Include <sys/wait.h> in bluewave.c to squash a warning.

Signed-off-by: Dan Cross <patchdev@fat-dragon.org>
2018-10-10 10:25:42 +10:00
Dan Cross
4827dcf8e4 Add a pointer vector abstraction.
There are lots of places where we want a growable
vector of pointers.  Add one.

Signed-off-by: Dan Cross <patchdev@fat-dragon.org>
2018-10-10 10:25:37 +10:00
Dan Cross
fa014f3a88 Simplify dynamic memory management.
Add utility routines and use them to simplify the
use of dynamically allocated memory.

Signed-off-by: Dan Cross <patchdev@fat-dragon.org>
2018-10-10 10:25:29 +10:00
Dan Cross
187cf02903 More GNUmakefile cleanups.
With the normalization of magimail's Makefile,
we can further simplify this logic.

Integrate the WWW logic into GNUmakefile.common.

Remove the custom `Makefile.sunos` files: just
use a conditional in the Makefile.

Signed-off-by: Dan Cross <patchdev@fat-dragon.org>
2018-10-10 10:25:26 +10:00
Dan Cross
264b5688b2 More GNUmakefile cleanups.
With the normalization of magimail's Makefile,
we can further simplify this logic.

Integrate the WWW logic into GNUmakefile.common.

Remove the custom `Makefile.sunos` files: just
use a conditional in the Makefile.

Signed-off-by: Dan Cross <patchdev@fat-dragon.org>
2018-10-10 10:23:29 +10:00
Dan Cross
fb64c2e924 magimail/src/Makefile: normalize targets
There were separate `freebsd`, `linux`, `cleanlinux`
and `cleanfreebsd` targets.  But these just did the
same thing, so simplify them to just have an `all`
and a `clean` target: this means we have less to plumb
through from the top-level Magicka GNUmakefile.

Signed-off-by: Dan Cross <patchdev@fat-dragon.org>
2018-10-10 10:22:33 +10:00
Dan Cross
4ed5319798 Rewrite non-WWW makefiles.
Delegate most of the logic to a "common" GNUmakefile,
with each system-specific GNUmakefile only setting a
handful of necessary variables.

Signed-off-by: Dan Cross <patchdev@fat-dragon.org>
2018-10-10 10:22:26 +10:00
Dan Cross
120e947d6e Rename Makefiles to GNUmakefiles.
GNU make is a requirement to build Magicka: make
this explicit with the naming of the files.

Signed-off-by: Dan Cross <patchdev@fat-dragon.org>
2018-10-10 10:22:21 +10:00
Dan Cross
b28e003945 Chat system: simplify connect logic.
Simplify the logic around making connections in the
chat system by delegating to utility functions that
return early on failure.

Signed-off-by: Dan Cross <patchdev@fat-dragon.org>
2018-10-09 15:49:54 +10:00
Dan Cross
d6826137dd clang-format
Fix a bunch of trivial formatting issues by running
`clang-format`.

Signed-off-by: Dan Cross <patchdev@fat-dragon.org>
2018-10-09 15:48:42 +10:00
Dan Cross
ff966a6b4d clang-format
Fix a bunch of trivial formatting issues by running
`clang-format`.

Signed-off-by: Dan Cross <patchdev@fat-dragon.org>
2018-10-09 15:39:59 +10:00
Andrew Pamment
991b1c4368 Update to v0.12-alpha and add area headers 2018-10-04 10:05:04 +10:00
Andrew Pamment
1d1f83cd41 Redraw BBS List after aborting 2018-10-02 10:16:50 +10:00
Andrew Pamment
c36b8d348e Fix bug when removing areas 2018-09-12 10:16:07 +10:00
Andrew Pamment
a9c73f15a6 another fix 2018-09-02 18:27:22 +10:00
Andrew Pamment
db4eeff587 Fix for empty messages 2018-09-02 18:23:47 +10:00
Andrew Pamment
4fa7236270 Fix dodgy code 2018-08-18 13:15:55 +10:00
Andrew Pamment
4cf5596737 documentation work and a bug fix 2018-08-13 14:07:21 +10:00
Andrew Pamment
26e753caa3 Make mgpost mnet aware 2018-08-01 11:13:00 +10:00
Andrew Pamment
746ecca318 Update LUA to 5.3.5 2018-07-31 22:07:40 +10:00
Andrew Pamment
49b764fd5a Update to include new mnet 2018-07-31 21:37:38 +10:00
Andrew Pamment
1b661f4f5b Fiddling with unread messages 2018-07-31 10:42:56 +10:00
Andrew Pamment
e5a07a3a25 Fix up line breaks 2018-06-24 11:16:59 +10:00
Andrew Pamment
44909f87ad Fix for fix 2018-06-24 11:01:24 +10:00
Andrew Pamment
78cf7067b6 fix line breaks 2018-06-24 10:59:11 +10:00
Andrew Pamment
47e6468501 fix up qwk toss - empty msgs 2018-06-24 10:56:15 +10:00
Andrew Pamment
ecb1c986f0 Start on qwknet support 2018-06-24 10:28:18 +10:00
Andrew Pamment
4b90398cbf Stop using system() 2018-06-20 19:39:57 +10:00
Andrew Pamment
c341df6738 Fix bluewave 2018-06-20 19:31:35 +10:00
Andrew Pamment
57a5ac98c8 Update documentation 2018-06-20 12:35:53 +10:00
Andrew Pamment
96ac7c0a3f Updates for macOS 2018-06-19 19:06:25 +10:00
Andrew Pamment
50f4b9a5a8 Move initialization of mqtt 2018-06-19 09:14:18 +10:00
Andrew Pamment
5853f46f5b Update documents etc 2018-06-19 09:11:52 +10:00
Andrew Pamment
1684f8ab39 Switch broadcast to MQTT 2018-06-18 16:52:27 +10:00
Andrew Pamment
760fef49b2 fix a bug with menus 2018-06-12 17:06:49 +10:00
Andrew Pamment
07b5568037 ansi files in strings 2018-06-08 09:27:53 +10:00
Andrew Pamment
772ec89da6 update documentation 2018-06-06 21:42:25 +10:00
Andrew Pamment
1cc8e16b71 Update dosbox shim to work with unpatched dosbox 2018-06-06 20:32:19 +10:00
Andrew Pamment
edb1b41652 Git hooks suck 2018-06-05 15:27:53 +10:00
Andrew Pamment
d14af4bf23 i will get this soon 2018-06-05 15:24:42 +10:00
Andrew Pamment
f12630f7e5 Last test commit 2018-06-05 15:23:30 +10:00
Andrew Pamment
ffd1c546b8 Another test commit 2018-06-05 15:21:49 +10:00
Andrew Pamment
1feaa7d91e Another test commit 2018-06-05 15:19:41 +10:00
Andrew Pamment
b472f6448c Test commit, just whitespace 2018-06-05 15:15:14 +10:00
Andrew Pamment
aa46db06a5 Update git modules 2018-06-05 14:03:18 +10:00