rsc
23aada8926
floating percent
2005-01-14 20:21:15 +00:00
rsc
732489da90
no /fd/0
2005-01-14 20:08:31 +00:00
rsc
162ef0743b
update paths
2005-01-14 19:43:41 +00:00
rsc
c358f4aa5e
license
2005-01-14 19:42:33 +00:00
rsc
cb98c6f854
stupid sun
2005-01-14 18:46:35 +00:00
rsc
7ea6c4fcbe
try to fix sun
2005-01-14 18:38:20 +00:00
rsc
147e5e8702
stupid sun
2005-01-14 18:35:33 +00:00
rsc
f940ad0699
stupid programmer
2005-01-14 18:35:17 +00:00
rsc
6b32f96d74
smart sun
2005-01-14 18:33:54 +00:00
rsc
d7925b13e3
stupid sun
2005-01-14 18:32:36 +00:00
rsc
9268e33d65
stupid sun
2005-01-14 18:25:05 +00:00
rsc
0dc9950215
stupid sun
2005-01-14 18:21:12 +00:00
rsc
2b3b1e8984
oops sunos
2005-01-14 18:11:21 +00:00
rsc
399ab50aa4
signedness
2005-01-14 18:05:05 +00:00
rsc
2d3f13df35
not reached
2005-01-14 17:57:32 +00:00
rsc
4a8edd8d41
add procwakeupandunlock
2005-01-14 17:56:21 +00:00
rsc
5ba56e9139
silence warning
2005-01-14 17:55:23 +00:00
rsc
459eae0c70
fix unsharp
2005-01-14 17:40:02 +00:00
rsc
1ac1981659
where did this change go?
2005-01-14 17:31:01 +00:00
rsc
359c1e017e
works on Linux 2.6
2005-01-14 04:24:09 +00:00
rsc
78e51a8c66
checkpoint
2005-01-14 03:45:44 +00:00
rsc
2634795b5f
64-bit fixes from lucho
2005-01-14 03:33:11 +00:00
rsc
133c240533
these mkfiles only confuse
2005-01-13 04:58:16 +00:00
rsc
3940506bcc
forgotten files
2005-01-13 04:56:07 +00:00
rsc
357621cd82
more small changes
2005-01-13 04:50:11 +00:00
rsc
c8b6342d3c
Many small edits.
2005-01-13 04:49:19 +00:00
rsc
a9eaaa03e0
maintain $path and $PATH simultaneously
2005-01-12 16:59:50 +00:00
rsc
7b0c2f155d
no more 9commands
2005-01-11 21:28:31 +00:00
rsc
37cc72d323
paranoia
2005-01-11 21:28:00 +00:00
rsc
e9dbe11dbf
don't rfork(RFNOTEG) because then you lose
...
the ability to read from the console. damn.
also, handle case where child exits before
fork returns in parent. have to record that
sigchld was seen and then run the handler later.
2005-01-11 21:06:55 +00:00
rsc
c70667367f
get rid of the 9foo commands in favor of the 9 script
2005-01-11 20:57:41 +00:00
rsc
1c096fa40a
better cleanup of tmp files
2005-01-11 20:57:00 +00:00
rsc
63abaa8216
fix cflags
2005-01-11 19:46:56 +00:00
rsc
ed7f32b9d7
unbugger postscript
2005-01-11 19:46:33 +00:00
rsc
4de03b544c
add $plan9 variable
2005-01-11 19:46:06 +00:00
rsc
b8f742db85
os x changes
2005-01-11 17:43:53 +00:00
rsc
dcba4bf6bd
fixes for openbsd
2005-01-11 17:14:07 +00:00
rsc
2e65dc0d02
changes from rob
2005-01-11 16:48:35 +00:00
rsc
515bd9ec76
do rfork(RFNOTEG) before exec
2005-01-10 00:28:14 +00:00
rsc
d8c78a8d56
add -r flag to reverse scrolling behavior.
...
from peter canning.
2005-01-10 00:21:13 +00:00
rsc
266f8e128c
oops
2005-01-07 23:11:34 +00:00
rsc
3088012119
symopen
2005-01-07 23:11:11 +00:00
rsc
0a76e9690e
symopen
2005-01-07 23:10:37 +00:00
rsc
6af7b77611
oops
2005-01-07 22:59:51 +00:00
rsc
50f7ec339a
initial darwin
2005-01-07 21:47:30 +00:00
rsc
1aa9c533e0
allow lock passing
2005-01-07 20:52:07 +00:00
rsc
8b549a6214
symopen
2005-01-07 20:45:11 +00:00
rsc
1ab0f6f00b
new program from presotto
2005-01-07 20:41:13 +00:00
rsc
931ba0b740
fix from axel
2005-01-07 20:07:33 +00:00
rsc
566f93c70d
fix sunos
2005-01-07 19:11:44 +00:00
rsc
c761d0aa4f
unbugger
2005-01-07 18:52:18 +00:00
rsc
39dbe6e72b
small hidings
2005-01-07 18:45:17 +00:00
rsc
60efa1d2b9
seems to correct lack of focus when
...
coming back from being hidden.
not strictly correct in multithreaded
programs but let's see if anything breaks.
2005-01-07 18:44:21 +00:00
rsc
21621d7e20
gcc
2005-01-07 18:04:24 +00:00
rsc
a19ff5b204
debugging for sam, and an old fix forgotten
2005-01-07 18:03:36 +00:00
wkj
b80755cf2d
Update CVS turd.
2005-01-07 17:41:02 +00:00
wkj
8a830ad090
First pass at supporting FreeBSD 5.x.
...
I do not yet have a way of testing this.
2005-01-07 17:38:08 +00:00
rsc
b4135f04f1
debugging
2005-01-07 17:26:07 +00:00
rsc
c619cc2cb9
more name conflicts
2005-01-07 17:21:09 +00:00
rsc
60ee914042
stupid FreeBSD name conflict
2005-01-07 17:20:02 +00:00
rsc
e45084490f
ignore spurious sigchilds on sunos
2005-01-07 17:06:01 +00:00
rsc
005a85f3a2
success on the sun
2005-01-07 08:02:54 +00:00
rsc
c345061e8d
sunos fixes
2005-01-07 07:47:37 +00:00
rsc
c71af67adc
do not depend on flock
2005-01-07 07:19:35 +00:00
rsc
0dfd6525a6
no need to include sec.h
2005-01-07 06:41:21 +00:00
rsc
6b4c8671de
add _flushmemscreen declaration
2005-01-07 04:05:32 +00:00
rsc
bdfd1b275b
add declaration for elfdl386mapdl.
2005-01-07 04:03:29 +00:00
rsc
d0f5cbcf04
make regdesc global
2005-01-07 04:02:28 +00:00
rsc
5eb2d21999
use fmtvprint to avoid needing
...
to copy the arguments.
(stupid va_copy).
2005-01-06 23:45:51 +00:00
rsc
a0a331aad9
add _procwakeupandunlock
...
to help ease locking contention
on Linux 2.4.
2005-01-06 23:43:42 +00:00
rsc
815552b9ed
go back to 1000 scheds
2005-01-06 23:13:56 +00:00
rsc
bb426e77f6
more precision on time
2005-01-06 23:11:14 +00:00
rsc
a620761c92
add some annoying lock loop prints -- let's see
...
if they ever fire.
also fix race in delaystack. it was actually happening!
that just goes to show that while i can reason very well
about what can and cannot happen, i have no intuition
at all for how likely they are.
2005-01-06 23:08:55 +00:00
rsc
af89fc108d
more debugging
2005-01-06 23:07:19 +00:00
rsc
f8104b3d3d
exit on eof
2005-01-05 04:01:12 +00:00
rsc
33adad7dc7
update mkmk.sh
2005-01-04 22:44:52 +00:00
rsc
b253a743b2
scrolling
2005-01-04 22:43:50 +00:00
rsc
9aa1c92f74
add new | syntax.
...
syntax will change.
2005-01-04 22:41:27 +00:00
rsc
9e6fcbd790
forgot this
2005-01-04 22:31:35 +00:00
rsc
b2ad2ef138
in with the new
2005-01-04 22:30:59 +00:00
rsc
48bfee4e5b
in with the new
2005-01-04 22:30:15 +00:00
rsc
c7acb53e03
add _threaddaemonize
2005-01-04 22:23:24 +00:00
rsc
15cd8255b5
more debugging
2005-01-04 22:22:18 +00:00
rsc
230ead2fbe
better handling
2005-01-04 22:22:09 +00:00
rsc
c66e8adfa3
remove thread.c
2005-01-04 22:21:33 +00:00
rsc
b4e8c4b6d6
use 9pclient
2005-01-04 22:21:23 +00:00
rsc
817f7637e8
good thing no one uses this.
2005-01-04 22:21:01 +00:00
rsc
d165fa680c
do not free r until done with it!
2005-01-04 22:20:52 +00:00
rsc
7e19561a6c
hide some routines
2005-01-04 22:20:21 +00:00
rsc
1818ce0f28
minor fixes; hide some routines
2005-01-04 22:20:14 +00:00
rsc
ba3de38060
no need for disk or scsi
2005-01-04 22:19:58 +00:00
rsc
834469a3a4
fix error message
2005-01-04 22:19:46 +00:00
rsc
70723aae3c
cache answer
2005-01-04 22:19:25 +00:00
rsc
a1d42887d6
add execl and rand
2005-01-04 22:19:18 +00:00
rsc
b94ad13d4b
cache answer
2005-01-04 22:19:07 +00:00
rsc
66c10f02c3
avoid duplicated code.
...
guarantee that EINTR is "interrupted".
2005-01-04 22:18:54 +00:00
rsc
f84eebeb81
use fcntl F_SETLK instead of flock, for sun's.
2005-01-04 22:18:40 +00:00
rsc
b4223cd6f2
exception names
2005-01-04 22:18:13 +00:00
rsc
a6662a3672
unused variables
2005-01-04 22:17:58 +00:00
rsc
d40457248b
use 9pclient
2005-01-04 22:17:47 +00:00
rsc
d2e350c019
parse -s option
2005-01-04 22:17:37 +00:00
rsc
f4b26b64bc
do threading right
2005-01-04 22:17:10 +00:00
rsc
b10db40d3b
exit correctly
2005-01-04 22:17:00 +00:00
rsc
28aaab76cf
exit correctly.
2005-01-04 22:16:38 +00:00
rsc
8cc98332ad
use 9pclient
2005-01-04 22:16:30 +00:00
rsc
f6127ed209
more tests
2005-01-04 22:15:53 +00:00
rsc
ed01060152
3d color cube
2005-01-04 22:13:32 +00:00
rsc
2ce287bb13
don't use (){} struct constructor
2005-01-04 22:10:43 +00:00
rsc
372e9667df
Goodbye SHORTLIB
2005-01-04 22:10:29 +00:00
rsc
eb423b5cc0
use 9pclient instead of fs
2005-01-04 22:09:51 +00:00
rsc
3f54e7c8a4
good bye SHORTLIB
2005-01-04 22:09:40 +00:00
rsc
b0a81ab05d
set SYSVERSION for 9c
2005-01-04 22:09:23 +00:00
rsc
1a0f021ef8
bugger fs in case it comes back
2005-01-04 22:09:09 +00:00
rsc
627bae9c76
clean up mkfile; fix winctlprint bug reported by peter canning
2005-01-04 21:39:23 +00:00
rsc
f755d50401
don't need to rename Fid
2005-01-04 21:29:20 +00:00
rsc
05636f8303
don't need to rename Fid anymore
2005-01-04 21:28:37 +00:00
rsc
93a6f8d76a
back to threadnotify
2005-01-04 21:28:25 +00:00
rsc
452c09358f
change to use new library.
2005-01-04 21:27:19 +00:00
rsc
30968c3fe9
typo flags => flag
2005-01-04 21:27:02 +00:00
rsc
100d566802
new prototype
2005-01-04 21:26:49 +00:00
rsc
f583e2b1d8
don't be dumb.
2005-01-04 21:26:30 +00:00
rsc
9e0b427274
small fixes; goodbye SHORTLIB
2005-01-04 21:26:13 +00:00
rsc
4bd8ec4c1c
change comparison function to be consistent.
...
(now qsort on sunos should stop crashing.)
2005-01-04 21:25:48 +00:00
rsc
0daf9c0941
have lrand now
2005-01-04 21:25:26 +00:00
rsc
c39bd3556b
allow - as input file
2005-01-04 21:25:17 +00:00
rsc
e2a1725dfc
more debugging
2005-01-04 21:24:52 +00:00
rsc
020c80587a
an old saddle
2005-01-04 21:24:19 +00:00
rsc
24c02865d8
placeholder; does not yet build
2005-01-04 21:23:50 +00:00
rsc
d1e9002f81
3D geometry
2005-01-04 21:23:01 +00:00
rsc
46f79934b7
lib9pclient is the new libfs
2005-01-04 21:22:40 +00:00
rsc
2600337aa7
remove libfs. now lib9pclient
2005-01-02 19:46:12 +00:00
rsc
acc021b8f8
add ? for unknown plumbs
2005-01-02 03:45:07 +00:00
rsc
4fe01a2b11
change _p9pow10 to fmtpow10
2004-12-31 05:37:15 +00:00
rsc
08166a4548
updates from andrey
2004-12-30 18:07:18 +00:00
wkj
8d8865f3d0
Rename lrand to p9lrand, too.
2004-12-29 02:44:01 +00:00
rsc
3015b83184
scroll virtual windows using mouse scroll
2004-12-29 02:42:20 +00:00
wkj
e25d5b710a
Avoid conflicts with stdlib.
2004-12-29 01:30:19 +00:00
wkj
0debe1c681
Use FreeBSD-approved method for determining FreeBSD version.
2004-12-29 01:29:42 +00:00
wkj
742988d7d8
GC unused variables.
2004-12-29 01:29:14 +00:00
wkj
188fecbe15
Update mkmk.sh.
2004-12-29 01:28:48 +00:00
wkj
c90dd38f54
Formatting nits.
2004-12-29 01:27:57 +00:00
wkj
4645c5d7d3
#define pow10 to _p9pow10 as a stop-gap.
2004-12-29 01:27:23 +00:00
wkj
829e822386
Appease the time_t monster.
2004-12-29 01:25:41 +00:00
wkj
c2070b2fc9
Include netinet/in.h to get ntohs prototype.
2004-12-29 01:25:18 +00:00
wkj
374886540d
Formatting nit.
2004-12-29 01:24:13 +00:00
rsc
e5d47e6e15
compiler appeasement
2004-12-28 23:27:16 +00:00
rsc
48907e89cb
declare elfdl386mapdl
2004-12-28 23:27:05 +00:00
rsc
09dd30c9a0
small changes for build
2004-12-28 23:26:53 +00:00
rsc
3ddda82110
add virtual desktop patch from andrey
2004-12-28 23:21:40 +00:00
rsc
df49b30343
be like plan 9 plumber
2004-12-28 23:20:54 +00:00
rsc
ddd8916a0e
vac is not buggered anymore
2004-12-28 23:15:55 +00:00
rsc
1f17800709
thread is not buggered anymore
2004-12-28 23:15:31 +00:00
rsc
228bb71d16
add crop
2004-12-28 23:13:17 +00:00
rsc
1d2533d010
restore old plan 9 property that when the
...
last thread exits the main proc, the remaining
program ends up in the background and the
program appears to have exited.
2004-12-28 22:36:24 +00:00
rsc
07bda1263e
avoid use of an extra proc
2004-12-28 22:29:43 +00:00
rsc
70997336be
remove debugging print
2004-12-28 22:13:33 +00:00
rsc
21e626deb3
remove race between openfdthread and connoutthread msgput,
...
so that openfd'ed fids always get clunked properly.
2004-12-28 22:11:34 +00:00
rsc
b37396bd11
make these files look like plan 9's
2004-12-28 20:01:58 +00:00
rsc
4dd07e012c
check against plan 9
2004-12-28 19:25:16 +00:00
rsc
727facb605
add bvprint
2004-12-28 19:18:33 +00:00
rsc
8b45564f0f
fix Bprint yet again
2004-12-28 19:18:19 +00:00
rsc
1369edef9f
move linux ureg code to portable file
2004-12-28 17:35:10 +00:00
rsc
e2f52703c2
fix bug in bprint. fmtprint => fmtvprint
2004-12-28 17:34:59 +00:00
rsc
f7b74c1725
FreeBSD tweaks
2004-12-28 17:34:05 +00:00
rsc
d54ead7fb9
more freebsd work
2004-12-28 04:20:39 +00:00
rsc
31cf0ab11f
attempt at FreeBSD pre-5 support
2004-12-28 03:50:11 +00:00
rsc
93eb807ac2
remove debugging
2004-12-28 03:42:11 +00:00
rsc
f5ff4947dd
add va_start/va_end.
2004-12-28 03:41:17 +00:00
rsc
65cd9e4d85
use fmtprint to avoid va_copy
2004-12-28 03:40:46 +00:00
rsc
ddb664da1b
add threaddaemonize
2004-12-28 01:45:39 +00:00
rsc
22c7ebffda
more little compile fixes
2004-12-28 01:45:05 +00:00
rsc
7ffc5208a8
use threaddaemonize
2004-12-28 01:37:18 +00:00
rsc
96d6b19dcd
new test program
2004-12-28 01:36:53 +00:00
rsc
2c87dda8f8
add threaddaemonize(), more bug fixes
2004-12-28 01:35:38 +00:00
rsc
929fcfe0e3
add note that vac should work.
...
change %R to %r
2004-12-27 21:05:39 +00:00
rsc
6a130cb01b
use getuser instead of getenv("USER").
...
add portdate file.
2004-12-27 19:40:50 +00:00
rsc
a812ae4b43
secstore from ehg
2004-12-27 19:36:51 +00:00
rsc
73bfbacb24
silence various warnings
2004-12-27 19:13:31 +00:00
rsc
b3efcdbf59
change to use new thread library
2004-12-27 19:13:15 +00:00
rsc
8cbd854a8a
better exec handling
2004-12-27 19:11:33 +00:00
rsc
0341761074
add awaitfor and waitfor
2004-12-27 19:11:21 +00:00
rsc
955a2ca78d
starting to work on Linux
2004-12-27 18:21:58 +00:00
rsc
e127e40bb1
shuffle to allow use of execchan in non-pthreads impls
2004-12-27 17:19:44 +00:00
rsc
e8a7b96999
more features
2004-12-27 17:01:23 +00:00
rsc
2189e55cde
dumb porting bugs
2004-12-27 16:57:41 +00:00
rsc
9939daadf4
use new thread library
2004-12-27 16:56:16 +00:00
rsc
8cd0011323
figure out which files to put in the library
2004-12-27 16:53:01 +00:00
rsc
f1e8706de8
linux pre-2.6 implementation
2004-12-27 16:52:46 +00:00
rsc
4dbefdd41c
start linux pre-2.6 port
2004-12-27 16:52:26 +00:00
rsc
fd46554030
good test programs
2004-12-27 05:21:41 +00:00
rsc
e8edc17986
lock using Lock instead of QLock.
...
qlocks are complicated enough that
they need to be able to print during
debugging.
2004-12-27 05:18:22 +00:00
rsc
73722a8bbf
confine pthreads to pthread.c
2004-12-27 03:49:03 +00:00
rsc
10b4555766
as wkj pointed out, notifyseton should not call notesetenable
2004-12-27 03:22:54 +00:00
rsc
17cdbb909b
fix to handle new
2004-12-27 01:22:48 +00:00
rsc
dcfa5aba0d
remove debugging
2004-12-27 01:22:33 +00:00
rsc
6d7fdb243c
changes from plan 9
2004-12-27 01:16:26 +00:00
rsc
334cb1e91c
change to use new thread library
2004-12-27 00:38:59 +00:00
rsc
0a839b8314
clone is a bad word on linux
2004-12-27 00:38:16 +00:00
rsc
3694b738b8
handle pty correctly on linux
2004-12-27 00:38:00 +00:00
rsc
2b9172c7d4
add readn to avoid need for plan9port libc
2004-12-27 00:36:40 +00:00
rsc
93f2ae0d92
change to use new thread library
2004-12-27 00:32:50 +00:00
rsc
e1dc7e4511
signal handling, add prototype for pthreadinit
2004-12-27 00:13:48 +00:00
rsc
43db87f1fc
bug fix -- need to enqueue before sending the packet,
...
in case the response comes back and another thread
tries to give it to us, all before we are enqueued.
2004-12-27 00:13:33 +00:00
rsc
4bef0baf95
changes from plan 9
2004-12-27 00:13:04 +00:00
rsc
94235a8b4b
change to use new thread library
2004-12-27 00:12:54 +00:00
rsc
9cb6f43045
bad name
2004-12-27 00:12:22 +00:00
rsc
186a31de6b
add for porting
2004-12-27 00:12:12 +00:00
rsc
6850febee1
porting changes
2004-12-27 00:11:46 +00:00
rsc
eb7f99c552
fmtdef.h needed for VA_COPY
2004-12-27 00:11:32 +00:00
rsc
cdccf023aa
add isNaN
2004-12-27 00:11:13 +00:00
rsc
e686c2b35e
forgot this
2004-12-27 00:11:01 +00:00
rsc
52e73e955b
add portdate
2004-12-26 23:59:30 +00:00
rsc
1b1434ebce
changes from plan 9. some clean-up.
2004-12-26 23:59:10 +00:00
rsc
127d5444fb
add portdate
2004-12-26 23:48:25 +00:00
rsc
be83c8415c
add portdate
2004-12-26 23:45:12 +00:00
rsc
66209ac0fe
changes from plan 9
2004-12-26 23:42:38 +00:00
rsc
bd8cb1a5b3
add portdate
2004-12-26 23:31:14 +00:00
rsc
6b322694f2
plan 9 changes
2004-12-26 23:26:46 +00:00
rsc
36a503c185
add portdate
2004-12-26 23:26:37 +00:00
rsc
b20f06ab9c
use new thread library
2004-12-26 23:24:32 +00:00
rsc
d9f3e89e5e
use volatile correctly
2004-12-26 23:24:14 +00:00
rsc
beff571cfd
add portdate
2004-12-26 23:23:57 +00:00
rsc
a743b8faa2
add portdate
2004-12-26 23:19:25 +00:00
rsc
5787ba4d73
add proper locking for libfmt!
2004-12-26 23:17:18 +00:00
rsc
a3add39bbc
plan 9 changes
2004-12-26 23:17:03 +00:00
rsc
00975b7ef1
add portdate
2004-12-26 23:10:19 +00:00
rsc
5cd259167b
portdates
2004-12-26 23:08:53 +00:00
rsc
ae1c9bc4ab
more tests
2004-12-26 23:07:49 +00:00
rsc
df121a0027
import changes from plan 9
2004-12-26 23:07:37 +00:00
rsc
a76c0fd4a9
pick up plan 9 fltfmt changes
2004-12-26 22:36:52 +00:00
rsc
3f1a219769
various little changes.
...
also pick up latest fltfmt from plan 9
2004-12-26 22:36:12 +00:00
rsc
5f8fa94796
cleanups - lots of removed files now in thread library.
...
qlock.c - stubs to thread library
notify.c - clean interface slightly.
2004-12-26 21:51:15 +00:00
rsc
b2ff538258
add for unix port
2004-12-26 21:50:39 +00:00
rsc
bd36f714d2
add for unix port
2004-12-26 21:50:28 +00:00
rsc
e5aa96acbf
clean up for unix port
2004-12-26 21:50:14 +00:00
rsc
5c8a042171
updates from plan 9
2004-12-26 21:46:26 +00:00
rsc
60535a5ff6
make work with new thread library
2004-12-26 21:37:31 +00:00
rsc
f99790979b
update to use new thread library
2004-12-26 02:10:47 +00:00
rsc
6a5c5d4870
remove empty qlock.c
2004-12-26 02:08:53 +00:00
rsc
1cc215aaf9
better unwinding for 386.
...
command-line extraction from core files on linux and freebsd.
move linux ureg into ureg386.h (used in many places).
2004-12-25 22:03:28 +00:00
rsc
619085f0b4
more new libthread
2004-12-25 21:57:50 +00:00
rsc
1544f90960
New thread library
2004-12-25 21:56:33 +00:00
rsc
7788fd5409
fix from forsyth via rob
2004-12-25 01:54:02 +00:00
rsc
5e2e4f8239
allow last column to be deleted
2004-11-15 16:19:03 +00:00
rsc
24f4e66b12
still more files
2004-11-08 16:04:01 +00:00
rsc
cf4f3eafc6
extra files
2004-11-08 16:03:42 +00:00
rsc
1956455367
more thread work
2004-11-08 16:03:20 +00:00
rsc
77dcf88474
stupid port bug. cannot use %ld to print a long as a *CHARACTER*
2004-11-03 14:27:30 +00:00
rsc
0d0bad2ee4
bug fix in Get from rob
2004-11-01 17:26:59 +00:00
rsc
9acaad4570
clean up signal handling
2004-10-23 02:59:33 +00:00