Commit graph

1419 commits

Author SHA1 Message Date
2218a7a9a1 (lwpProc): Members lowmark and himark are confusing, replace by
ustack, usize.
(lwpCreate): Initialize them.
(lwpStackCheckInit, lwpStackCheck, lwpStackCheckUsed): Rewrite using
them.  lwpStackCheckUsed() was off by LWP_REDZONE when stack grows
down.

(lwpDestroy): Don't bother to clear memory to be freed.
2005-12-10 17:26:22 +00:00
bd7b1f480a Clean up the move of lwpProc (lwpint.h rev. 1.11, lwp.h rev. 1.8). 2005-12-10 16:55:38 +00:00
ef79cd67ef (lwpInitContext) [UCONTEXT]: Failed to initialized uc_stack.ss_flags. 2005-12-10 15:03:11 +00:00
bb33660672 Clean up the move of lwpProc (lwpint.h rev. 1.11, lwp.h rev. 1.8). 2005-12-10 15:00:35 +00:00
a540be8fe3 (empth_start, empth_init, empth_alarm) [_EMPTH_POSIX]: We do raise
SIGALRM!  Revert rev. 1.21.

(empth_alarm): Internal linkage.
2005-12-09 20:52:30 +00:00
16fe285ec7 (lwpCreate) [UCONTEXT]: ss_sp is the (base) address of the stack area,
not the initial stack pointer.  Fix.  ss_size was wrong as well.
Amazing that this ever worked.
2005-12-07 20:39:55 +00:00
bc270377d5 [UCONTEXT] (lwpInitContext): Failed to initialize context.uc_link as
required by the API.
2005-12-07 20:32:25 +00:00
28e116dac4 (lwpCreate): Check STKALIGN is sane.
(lwpCreate): Used to allocate one byte more than necessary.  The fix
won't save memory (malloc() will add the byte back), it's just clearer
this way.

(lwpCreate): Clean up computation of sp.  Rename parameter size to
stacksz.

(lwpCreate): Always compute newp->lowmark and newp->highmark from sp,
not from s.  Old code misaligned newp->himark for stacks growing
upward when stack size argument wasn't aligned.
2005-12-07 20:28:12 +00:00
3bc2c1ae08 (stkalign_t, STKALIGN): Replace. 2005-12-07 19:47:26 +00:00
aab54fcd54 (lwpProc, lwpSem): Declare as incomplete type in include/lwp.h. Move
complete declaration to src/lib/lwp/lwpint.h.
(lwpQueue): Move to src/lib/lwp/lwpint.h.
(empth_main, empth_flags): New.
(empth_init): Initialize them.
(empth_create, empth_exit): Use them instead of lwpProc members.
2005-12-07 19:15:37 +00:00
f958d3d683 (lwpReschedule): Fix the previous revision. 2005-12-06 00:12:34 +00:00
a76c6d3a4a [BOUNDS_CHECK]: Defunct, remove.
(lwpReschedule): Fix potential crash bug that crept in with
BOUNDS_CHECK years ago.
2005-12-05 22:58:23 +00:00
d5774a938d (lwpSleepFd): More information in debug output.
(lwpSelect): Fix use of uninitialized variable in debug output.
2005-12-05 22:38:58 +00:00
b60f7d7b42 Fix the previous revision. 2005-12-05 22:34:22 +00:00
80a72d1906 Clean up includes. 2005-12-05 22:31:45 +00:00
5a248c0d4e Doc fix. 2005-12-05 22:28:52 +00:00
320322cda9 (oops): Move declaration to misc.h, to make CANT_HAPPEN() usable
with just misc.h included.
2005-12-05 22:13:35 +00:00
3a18d0b986 (lwpSave, lwpReschedule) [hpc]: Move machine-dependent code to arch.c,
where it belongs.  Code looks fishy.  Untested.
(initcontext, startpoint): Internal linkage.
2005-12-05 21:38:03 +00:00
955fab9d86 Remove LWP code for targets we no longer support: VAX/MIPS Ultrix
(dropped in Make.sysdefs rev. 1.12), 386 USL/Unixware (unclear, long
ago), 386BSD (never been?)
2005-12-05 21:07:24 +00:00
081e60d86e Clean up the incomprehensible #ifdef jungle a bit. Didn't compile if
both UCONTEXT and one of the other recognized preprocessor symbols was
defined; fix to prefer UCONTEXT.
2005-12-05 20:30:29 +00:00
5d79a0cf6e (lwpCreate): Clean up the incomprehensible #ifdef jungle. No
functional changes.
2005-12-05 19:16:59 +00:00
e29f288289 Remove silly superflous parenthesis. 2005-12-03 21:14:26 +00:00
e59c4bcfd0 (peek): Old owner is not hidden, remove column. 2005-12-03 21:04:00 +00:00
8f7389e404 (peek, empmod): Remove obsolete command hidden. 2005-12-03 21:02:31 +00:00
38c55314f2 Doc fix. 2005-12-03 20:59:07 +00:00
2ebc947969 (xundump): Fix rev. 1.19. 2005-12-03 16:15:16 +00:00
86a59e4de4 (xuflds, xunsymbol, xuloadrow): Symbol sets.
(VAL_SYMBOL_SET, getid, xunsymbol1): New.

(xunsymbol): New argument n for more useful diagnostics.

(xuloadrow): Remove redundant semantic check.
2005-12-03 14:14:44 +00:00
739f346584 (xunsymbol): Fix design flaw: negative symbol values were interpreted
as failure.
2005-12-03 13:38:52 +00:00
b7eb39ebef (xuflds): Allow unescaped space and tab in strings. Also fix the
previous revision, which broke '#' in strings.
2005-12-03 11:36:55 +00:00
1eb7d1795c (xuloadrow): Fix crash. 2005-12-03 11:19:20 +00:00
0a7291eb37 Less rigid field separators, support comments:
(skipfs): New.
(xuflds, xundump): Use it.  Update field scanf stop-sets accordingly.
(xuflds): Update test for good field separator.

(xundump): Fail silently if nothing can be read and no specific table
is expected.
2005-12-03 11:04:44 +00:00
8ca219819c (xuloadrow): Obey NSC_EXTRA.
(xuloadrow): Remove redundant `not supported' check.
2005-12-03 10:15:57 +00:00
29c83d1511 (ef_init_srv): Call ef_init() before ef_load().
(xundump): Set empfile member cids in addition to fids.

(xundump): Clarify shortcomings: requires EFF_MEM, appends sentinel
always, can't grow dynamic cache.

(xundump): Return table type on success.
2005-12-03 10:09:53 +00:00
b8befab521 (xuloadrow): Fix rev. 1.11. 2005-12-03 09:17:30 +00:00
e1420d2a14 (xundump): Fix parsing of XDUMP header (really!) and footer. 2005-12-02 19:22:27 +00:00
b2e18c5125 (xuflds): The way field separators were parsed lead to confusing
diagnostics on EOF.  Fix.  Also simplify treatment of newline.

(xuflds): Require identifiers to start with a letter.
2005-12-02 18:57:55 +00:00
1e4ecda185 (xundump): Fix parsing of XDUMP header. 2005-12-02 17:27:19 +00:00
aa63e64107 (xuflds): Test for no fields was off by one. Remove it; let caller
deal with missing fields.
2005-12-02 17:08:36 +00:00
f6bec2c3f7 (xuflds): Simplify test for space in values[]. 2005-12-02 17:05:25 +00:00
8d0ec9db08 (xundump): Improve diagnostics. Remove superflous check for
unexpected EOF.
2005-12-02 16:06:24 +00:00
8e6baf0bcb (xundump): Table names no longer contain whitespace. Simplify. 2005-12-01 20:00:15 +00:00
871ed677c2 (empfile): Space in Empire names requires players to quote the names
on the command line.  Replace by dash.
2005-12-01 19:53:51 +00:00
95a2523b9f (xuflds): Fix confusing diagnostics on unexpected EOF. 2005-12-01 19:28:31 +00:00
656b726a24 Plug memory leaks:
(freeflds): New.
(xundump): Call it.
(xuloadrow): Leave freeing storage to freeflds().
(xuflds): Ensure values[] is terminated with a VAL_NOTUSED element
even on error.
2005-12-01 19:12:54 +00:00
33912952bb Roll back to rev. 1.3 in preparation of a re-engineering of the
changes since then.
2005-12-01 18:56:41 +00:00
Ron Koenderink
65cda58286 (verify_row): Remove // comment.
Change %d to %ld when printing a long.
2005-12-01 00:39:05 +00:00
Ron Koenderink
40c821d28b (ef_init_srv): Add a call ef_verify() to verify game data and game
configuration consistency.

(ef_verify): New.  Verifies game data and game
configuration consistency.
2005-11-30 19:17:58 +00:00
Ron Koenderink
0511565c11 (ship_chr_flags[]): Remove internal flags (M_XLIGHT, M_NCHOPPERS)
from ship_chr_flags[] so they do not appear in the show output.

(missions[]): Add MI_NONE to missions[] table.
2005-11-30 18:57:53 +00:00
Ron Koenderink
ea1e3b6090 (xuflds): Allow multiple spaces to separate fields or symbols in symbol set. 2005-11-30 17:16:02 +00:00
Ron Koenderink
e9ddf6a80b (xunsymbol): Fix formating. 2005-11-30 00:36:35 +00:00