ehouse
7077a11af6
pass .css file
2009-07-31 12:58:47 +00:00
ehouse
acbf8180ef
add missing lock(); track and display uptime of daemon child as well as parent
2009-07-31 12:56:04 +00:00
ehouse
80ccdd6d04
spelling...
2009-07-31 12:47:58 +00:00
ehouse
f537169db5
Assign 0 not NULL to pthread variables.
2009-07-31 12:43:04 +00:00
ehouse
bcc887c0b1
Need to remove before inserting. Todo: is there a replace?
2009-07-31 12:39:47 +00:00
ehouse
503db9cc6f
up copyright
2009-07-30 12:54:17 +00:00
ehouse
f35f2fe696
add css file path
2009-07-30 12:52:05 +00:00
ehouse
ba97f096dc
make css file for http interface configurable; fix bug where
...
connections arriving too close together would wind up with different
crefs (using new mutex).
2009-07-30 12:49:21 +00:00
ehouse
631bf4b179
write to named file for use on ISP from cron
2009-07-30 12:46:40 +00:00
ehouse
2641ab6430
bug fix: mark after locking so will unlock in destructor
2009-07-30 12:39:45 +00:00
ehouse
7338a706cb
option to randomly kill xwords instances
2009-07-29 04:31:23 +00:00
ehouse
192fb50bf8
add SIGINT handler that calls quit (to save files). Listen for errors in poll.
2009-07-29 04:29:29 +00:00
ehouse
4a5d74a0af
rename state to take up less space in browser; add number of respawns
...
to status display.
2009-07-29 04:25:21 +00:00
ehouse
8be31357ad
track per-cref lifetime and display it via http
2009-07-28 05:41:15 +00:00
ehouse
9ab746d8ac
Include strerror output in a few socket-related error messages.
2009-07-28 05:17:44 +00:00
ehouse
8284799abe
Fix crashes resulting from deleting cref instances in one thread while
...
another wanted to operate on them. The root problem is that you can't
dispose of a mutex while somebody's blocking on it. So now the
locking mutexes live inside the cref class. When the lock owner
realizes the cref needs to die, it sets a flag and it's moved to a
recycled list. A thread blocking on the mutex will then get it, but
checks the flag and releases it immediately if it's being recycled.
(Also improve the http interface a bit.) With these changes I've run
31K (and counting) games against the relay without a crash or deadlock
(using sim_real.sh.) The main problem that remains is that sometimes
two games using the same cookie wind up with two crefs (and so never
connect.)
2009-07-28 05:15:26 +00:00
ehouse
0d03ed71bb
cleanup
2009-07-28 05:09:24 +00:00
ehouse
6b1cf247bf
Don't alloc storage for fds and log buffer each time through poll
...
loop; instead reuse and realloc when needs to grow.
2009-07-28 05:08:15 +00:00
ehouse
8c7c457a54
shorten state names so they take up less webpage space.
2009-07-28 05:06:25 +00:00
ehouse
62b7d3c3a4
Clean up gtk case and fix post-game log checking.
2009-07-28 05:02:09 +00:00
ehouse
3b62e04d07
don't use -lmcheck. It causes a lot of crashes in places where it
...
certainly looks as if nothing is wrong.
2009-07-28 05:00:18 +00:00
ehouse
dddd5e1dd8
clean up logging. I got some cores that suggest overflow. This fixes
...
that if indeed it was happening. Problems with sockets disappearing
while in poll may remain.
2009-07-16 04:43:33 +00:00
ehouse
19cff0f7c5
make all game ids (cookies) unique; fix success test
2009-07-16 04:36:30 +00:00
ehouse
0a0d4804dd
store keys and values as const char* instead of string since the
...
string code was involved in a lot of crashes.
2009-07-16 04:23:02 +00:00
ehouse
8a0d963c95
include abbreviated uptime in stat row
2009-07-16 02:56:25 +00:00
ehouse
c5e73fd725
Add to http display number of games currently being hosted.
2009-07-13 03:01:22 +00:00
ehouse
582eb88f9a
int->bool
2009-07-13 02:58:16 +00:00
ehouse
fed0458f2e
various improvements. Runs games forever now, though exit is clumsy.
2009-07-13 02:57:41 +00:00
ehouse
d7cd277893
Add option to close stdin on startup, which seems required to run
...
curses version from script. There's probably a better way...
2009-07-12 01:32:14 +00:00
ehouse
df293db349
script to run lots of games with events at more natural intervals against relay.
2009-07-12 01:18:09 +00:00
ehouse
0b65198027
ignore core files
2009-07-10 05:04:57 +00:00
ehouse
4c523b628c
Make slow-robot work for curses client too.
2009-07-10 05:04:04 +00:00
ehouse
184a154c52
New feature, meant for testing relay, makes robot skip random number
...
of seconds within specified range before making a move. Working only
on gtk so far, and will probably never be used other than on linux
clients.
2009-07-09 12:43:51 +00:00
ehouse
854b3d9349
use synchronized method to add map entries
2009-07-06 02:02:59 +00:00
ehouse
2ef16d44ca
Include number of games played in html output; don't report closed
...
sockets found while reporting closed sockets (to avoid deadlock);
remove sockets from crefmgr's map when closing them so new connections
using same (re-used) socket aren't treated as belonging to open games.
2009-07-06 01:50:51 +00:00
ehouse
a680a6e5fe
Always close sockets we're done with. Otherwise they leak -- don't get reused.
2009-07-06 01:32:30 +00:00
ehouse
37dc9b7b88
running under valgrind I need to handle SIGPIPE.
2009-07-06 01:31:16 +00:00
ehouse
7893c2066a
get rid of gratuitous echo
2009-07-05 01:46:27 +00:00
ehouse
c0073183ba
improve relay test script to better run in a loop.
2009-07-03 14:55:20 +00:00
ehouse
f4db39f490
synchronize reads of std::map to fix crash due to memory corruption.
...
Apparently containers aren't thread-safe even for reads.
2009-07-03 14:54:21 +00:00
ehouse
a954286960
avoid mempool assertions by cleaning up on way out
2009-06-30 12:55:47 +00:00
ehouse
9b29e45ea4
plug valgrind-found leak; prefer localtime_r.
2009-06-29 12:58:30 +00:00
ehouse
c347bbd963
tweak new game dialog
2009-05-01 04:36:58 +00:00
ehouse
e19e8411cb
fix compilation error
2009-05-01 04:29:13 +00:00
ehouse
927c363edf
Move more (hopefully this is it) strings into resources; make sure all
...
three .rc files have all strings.
2009-04-30 04:25:17 +00:00
ehouse
ce09a83b12
script to check that .rc files have all expected ids defined
2009-04-30 04:20:30 +00:00
ehouse
ee2e1e1234
Move another string from code into resources.
2009-04-26 20:21:21 +00:00
ehouse
0c5088192d
remove logging
2009-04-26 20:20:14 +00:00
ehouse
e4977e2c5f
Add ability to scroll dialogs by dragging. Works only on
...
touchscreens, and has no sense of momentum.
2009-04-26 20:10:28 +00:00
ehouse
eb5ee8431b
check string ids back in rather than generating; move macro from .rc
...
file into new .h all can include; use XWCOMBO more; build shippable
files in new built directory within obj_*; don't tell windres that
french is english.
2009-04-24 05:36:31 +00:00