Commit Graph

767 Commits

Author SHA1 Message Date
Ryan Cumming 418e27ea68 Make CDROM_GetLabel return 0 in the event of failure, and make the
default label for drives a string of 11 spaces.
2001-01-09 20:54:11 +00:00
Alexandre Julliard 8081e5a1e5 Added handle_t type to server interface so that we can make handles
pointers later on.
Always use 0 to signal invalid handle in server requests.
2001-01-05 04:08:07 +00:00
Alexandre Julliard 40060a1365 Removed obsolete code. 2001-01-04 19:56:29 +00:00
Guy L. Albertelli 8d91b501dd Reimplemented "relay=" and "snoop=" suboptions. 2001-01-04 19:37:37 +00:00
François Gouget 44a182229b winuser.h now requires that we include winbase.h first. 2000-12-19 04:53:20 +00:00
Morten Welinder 87093f5386 (parse_options): Allow GNU-like option arguments like
"--desktop=800x600".  (Not perfect -- we don't allow shorthands.)
2000-12-18 03:49:49 +00:00
Andreas Mohr 1f192c15bb Improved usage message. 2000-12-15 21:28:47 +00:00
Huw D M Davies ebb3a68cbc Status of CDROM_AUDIO_INVALID seems to mean the disk is stopped. 2000-12-15 20:55:39 +00:00
Alexandre Julliard 909eff9932 Added support for Unicode applications in winebuild.
Removed cuiexe_no_main hack.
Avoid stdcall function declarations inside functions because of gcc bug.
2000-12-15 03:38:11 +00:00
Martin Pilka 57f8eb71da - registry loading speed up (reduced client <-> server communication)
- make the code a bit more understandable
2000-12-15 03:22:27 +00:00
Alexandre Julliard db0747d095 Removed some unnecessary includes.
Got rid of ldt.h.
2000-12-13 20:23:41 +00:00
Alexandre Julliard 6c8edaa667 Use getpagesize() instead of VIRTUAL_GetPageSize(). 2000-12-13 20:22:47 +00:00
Alexandre Julliard 982a223f36 Replaced PTR_SEG_TO_LIN macro by exported MapSL function.
Fixed a few ptr/segptr mismatches.
Moved CONV_RECT/POINT macros to wingdi16.h.
2000-12-13 20:20:09 +00:00
Alexandre Julliard 751625e089 Got rid of main.h. 2000-12-12 00:50:19 +00:00
Alexandre Julliard bf67259a41 Use the DRIVE_* API constants instead of the DRIVETYPE enum.
Changed DRIVE_CANNOTDETERMINE and DRIVE_DOESNOTEXIST to use the
correct names.
Cleaned up a few dependencies on internal drive.c functions.
2000-12-12 00:44:42 +00:00
Alexandre Julliard becb9a353b Moved all Wine internal definitions out of process.h. 2000-12-11 03:48:15 +00:00
Andreas Mohr 1af53cbb2a - README update
- add offsets to ASPI struct defines
- spelling
2000-12-09 03:15:32 +00:00
Michael Veksler cfb63bd289 Add basic NLS information needed for Hebrew. 2000-12-06 20:11:40 +00:00
Alexandre Julliard 633293f093 Build the debugger as a .so. 2000-12-06 03:20:47 +00:00
Eric Pouech 816845026c Fixed bugs when tray was open. 2000-12-02 23:42:42 +00:00
Francois Gouget 519346a47e Fixed miscellaneous typos, syntactic and grammatical errors. 2000-12-02 20:18:08 +00:00
Patrik Stridvall 2b3aa616e8 Added/modified documentation for function arguments. 2000-12-01 23:58:28 +00:00
Patrik Stridvall 7a4e599780 Fixed some issues found by winapi_check. 2000-12-01 23:53:46 +00:00
Alexandre Julliard ef57e18f99 Removed some unnecessary includes. 2000-12-01 21:32:55 +00:00
Alexandre Julliard 5ce2329a95 Finished separation of advapi32. 2000-11-30 20:31:41 +00:00
Andreas Mohr c3350c537e Added alias capability to --winver.
win2000 is the official value.
2000-11-30 01:29:45 +00:00
Alexandre Julliard e296bf3717 Renamed CallTo16* functions to wine_call_to_16* and export them from
kernel32.spec.
2000-11-29 19:39:30 +00:00
Marcus Meissner db6fc1ce61 linux-2.4.0-test10 now calls 'flags' as 'features'. 2000-11-28 23:54:36 +00:00
Alexandre Julliard 24a62ab9b0 Got rid of the Wine internal lstrcpy* functions and of winestring.h. 2000-11-28 22:40:56 +00:00
Dimitrie O. Paun 529da54394 Require {DECLARE,DEFAULT}_DEBUG_CHANNEL statements to end in a ; 2000-11-27 23:54:25 +00:00
Andreas Mohr 162378420c Add FloatingPointProcessor empty entry to the registry. 2000-11-27 22:46:00 +00:00
Andreas Mohr cb45438be2 - added winver settings nt2k, win30 and win20 (yes, some rare programs need this)
and *document* it (win98 was not documented previously)
- OaBuildVersion: add value for NT4 SP6
- spelling fixes
2000-11-27 01:39:05 +00:00
Alexandre Julliard 5b971f009a Moved wsprintf functions to dlls/user. 2000-11-26 22:39:50 +00:00
Marcus Meissner 8f1e39f3a7 RegSetValueEx16 might get passed 0 as count of databytes, determine
string length for ourselves in this case.
2000-11-15 22:13:11 +00:00
Alexandre Julliard b1e70285b4 Added __wine_get_main_args to retrieve command-line arguments for the
application.
2000-11-09 20:29:42 +00:00
Alexandre Julliard 85423c6a6b Added new library.h header for libwine definitions.
Added getpagesize() and wine_anon_mmap() portability functions.
2000-11-08 04:28:54 +00:00
Alexandre Julliard 94613ab03e New debug channel mechanism allowing decentralized channel
declarations.
2000-11-05 04:51:34 +00:00
Alexandre Julliard 908464d448 Authors: Andreas Mohr <amohr@codeweavers.com>, Dimitrie O. Paun <dimi@cs.toronto.edu>, Patrik Stridvall <ps@leissner.se>
Various warning fixes.
2000-11-01 03:11:12 +00:00
David Elliott c6161ac66a _nt_parse_nk() should not close keys that it does not open. 2000-10-31 01:36:50 +00:00
Alexandre Julliard 2fa4f767aa Build ntdll as a real dll, including everything that was previously in
libwine.so. Created a new (mostly empty) libwine.so in library/ subdir.
2000-10-31 00:20:51 +00:00
Francois Gouget bec545ae98 Return a more plausible value for MinimumApplicationAddress. 2000-10-28 00:34:16 +00:00
Patrik Stridvall a9f6a9daec Explicitly initialize structures. 2000-10-24 02:22:16 +00:00
Andreas Mohr 588ee35618 Always open/close the CD-ROM device for every Windows API CD-ROM
access.
2000-10-23 00:40:23 +00:00
Alexandre Julliard 57f05e1913 Converted a few more server requests to the new mechanism. 2000-10-15 00:40:25 +00:00
Mike McCormack 11776c1fcf Moved comm.c into kernel32. 2000-10-13 17:11:30 +00:00
Alexandre Julliard 15bfcd0398 Moved $(MODULE).o rule out of Make.rules into the individual
Makefiles.
2000-09-29 00:28:25 +00:00
Alexandre Julliard d8fab2e67c Removed some of the XXX_reg macros now that we are using the standard
CONTEXT86 structure everywhere.
2000-09-25 23:53:07 +00:00
Alexandre Julliard 072dfb57e3 Removed inclusion of wine/winestring.h from winbase.h and added it to
the C files that need it.
2000-09-25 23:30:56 +00:00
Andreas Mohr c941effc24 Make GetTickCount not use the whole Unix epoch (since 1970) any more,
since that crashed several games or caused problems with them as they
aren't used to a high Windows uptime of more than 24.9 days.
2000-09-22 22:37:56 +00:00
Andreas Mohr fd8104987f fixed the win95 registry loader to have somewhat stricter checking. 2000-09-22 20:50:35 +00:00
Mike McCormack 556d11de46 - removed redundant functions COMM_Get(Read/Write)Fd
- corrected the name of 16bit functions in comments
- removed unused static variable
2000-09-18 01:41:07 +00:00
Mike McCormack 654fcc721b Implemented SetCommMask, SetCommTimeouts, GetCommMask, GetCommTimeouts. 2000-09-16 20:55:12 +00:00
Andreas Mohr 0c6e36999b Silence some bogus error message. 2000-09-16 20:47:00 +00:00
Andreas Mohr 20cd9356a8 - fixes debugger output
- get rid of wrong comments
- fix comments
- .spec spelling fix
- improve warning message
2000-09-12 23:40:40 +00:00
Mike McCormack 44b5bf5998 Added serial port object to the server. 2000-09-07 18:39:51 +00:00
Alexandre Julliard 92643003cf Converted a lot of server requests to the new exception handling
mechanism.
2000-08-31 01:59:51 +00:00
Alexandre Julliard 9c2370bd75 Added exception handling wrapper to a number of server requests.
Changed a few requests to use the new vararg mechanism.
2000-08-30 00:00:48 +00:00
Andreas Mohr 2951862be2 Fixed verbose CD-ROM serial number warnings and some spelling errors. 2000-08-29 23:56:20 +00:00
Peter Ganten c7c4246a99 - Always store the full path name of 32bit modules in WINE_MODREF
- Add the possibility to use path names with the --dll command line
  option
- Add the possibility to use the --dll command line option several
  times.
- Note: The colon-sign is now exchanged with the plus-sign, as it is
  part of dos path names.
2000-08-28 21:33:28 +00:00
Andreas Mohr 349655636b - made the MIDI sequencer error message much better for confused users
to be found on #WineHQ
- use strerror instead of errno at important places
- got rid of HAVE_STRERROR macro
- removed some #include:s (hopefully I didn't break anything)
2000-08-26 20:31:48 +00:00
Andreas Mohr 217a682b4f Minor cosmetic changes. 2000-08-25 21:56:19 +00:00
Andreas Mohr 8337f28b70 Cleanup and speedup of init code. 2000-08-25 21:55:23 +00:00
Marcus Meissner 9e0ae86d06 Use int instead of CHAR/WCHAR in va_arg() (fixes gcc-current compile
problem).
2000-08-25 21:31:57 +00:00
Dmitry Timoshkov 56f8e274c7 Added new language detection scheme that uses NLS data base instead of
hard coded values.
2000-08-20 03:39:41 +00:00
Ed Snow 9fcb4f551e Corrected serial number generation for CD's with 1 or 2 tracks. 2000-08-19 20:19:46 +00:00
Stefan Leichter eb0ab1b1ec Fixed return value of CDROM_GetLabel if CDROM_Open failed (e.g. no
Device entry for drive in wine.conf).
2000-08-18 23:45:46 +00:00
Alexandre Julliard dcd247e55f Moved CharUpper* and CharLower* functions to dlls/user. 2000-08-14 17:39:15 +00:00
Alexandre Julliard d586dc99be Replaced VERSION_* calls by exported API equivalents. 2000-08-14 14:35:01 +00:00
Alexandre Julliard 198746d812 Replaced global Callbacks structure by appropriate glue code
generation. Removed a few unused entries in the Callout structure.
2000-08-14 14:29:22 +00:00
Alexandre Julliard c97bb4c5d6 Added Unicode ctype support. 2000-08-11 20:53:40 +00:00
Alexandre Julliard 42d20f9dca Merged clipboard driver into USER driver.
Moved all ttydrv source files to dlls/ttydrv.
Load functions pointer for the USER driver from the graphics driver
dll with GetProcAddress.
2000-08-10 01:16:19 +00:00
Alexandre Julliard 5ab9d860f2 Removed some unnecessary #includes and dll dependencies. 2000-08-09 22:35:05 +00:00
Alexandre Julliard 46733de12b Removed winver and service_table from the PDB and made them static
variables.
2000-08-09 22:31:24 +00:00
Alexandre Julliard 081ee94117 - Fixed resource functions to work directly from the HMODULE instead of
requiring a modref.
- Attempted to get LOAD_LIBRARY_AS_DATAFILE right (based on patches by
  Eric Pouech and Dusan Lacko).
- Simplified modref structure and handling.
2000-08-07 04:12:41 +00:00
Alexandre Julliard 3850c1ae16 Moved most USER string functions to dlls/user.
Cleaned up a few more inter-dll dependencies.
2000-08-06 02:42:46 +00:00
Alexandre Julliard cb10fdab99 Replaced lstrlen/lstrcmp by libc equivalents everywhere we don't need
to trap exceptions.
2000-08-06 02:41:16 +00:00
Alexandre Julliard 93652e1a68 Moved a bunch of functions out of libwine/kernel/gdi into USER. 2000-08-04 04:21:02 +00:00
Alexandre Julliard 09ddb59142 Make USER and GDI separate dlls. 2000-08-03 22:22:42 +00:00
Alexandre Julliard 646c562f9c Cleaned up some more USER dependencies. 2000-07-31 23:32:47 +00:00
Alexandre Julliard 6b141176be Moved toolhelp implementation into kernel32 dll. 2000-07-31 21:01:05 +00:00
Alexandre Julliard 946a4448af Cleaned up a few USER dependencies. 2000-07-30 13:50:27 +00:00
Alexandre Julliard 58d5a0a786 Removed some unnecessary inclusions of wingdi.h and winuser.h 2000-07-29 21:58:17 +00:00
Dmitry Timoshkov f1fd89db42 FindResourceExA/W should search for the specified language resource only.
FindResourceA/W should search for any language resource.
2000-07-29 00:01:57 +00:00
Andreas Mohr 3084b58606 - fixed a gross bug in SetCurrentDirectoryA (where changing to a new
non-existent directory would leave the new drive enabled upon aborting
  (fixes CuteFTP install and should fix MANY apps)
  This has probably been caused by myself. *brownpaperbag*
- added GetVolumeInformation serial number bug-for-bug compatibility
- corrected Unicode labels (better CD-ROM handling in general)
- moved CD-ROM label detection code to misc/cdrom.c
- possible to use loopback mounted ISO9660 files
- init some uninitialised drive fields
- remove some unnecessary header includes
2000-07-25 20:59:59 +00:00
Dave Pickles a64603d3d6 Improved FormatMessage:
- Added full support for FORMAT_MESSAGE_FROM_SYSTEM
- Implemented language search as documented
- Illegal combinations of options trapped.
- Message table for system messages added.
2000-07-25 17:53:58 +00:00
Patrik Stridvall 315b00e861 Fixed issues found by winapi_check. 2000-07-25 17:45:14 +00:00
Alexandre Julliard d5041fc45a Moved thunking functions off to kernel32.dll. 2000-07-25 16:42:25 +00:00
Alexandre Julliard a3e0cfc5fb Get full path of argv[0] before we change directories.
Make sure process names are long path names.
Cleaned up initialisation a bit.
2000-07-16 18:21:34 +00:00
Mike McCormack a341a96789 Hook serialui dll into existing comm functions. 2000-07-15 21:36:31 +00:00
Alexandre Julliard ce4784d8a5 Made --language behave the same as setting the LANGUAGE environment
variable.
2000-07-15 19:59:10 +00:00
Gerald Pfeifer 5dae382f68 Fixed an incorrect format string. 2000-07-15 14:58:32 +00:00
Eric Pouech 254cd6b6de Fixed FormatMessage[A|16] against some buffer overflow cases. 2000-07-10 13:06:25 +00:00
Stefan Leichter dcb9733580 Fixes the BuildCommDCBA function. 2000-07-09 12:19:44 +00:00
Hidenori Takeshima 01f78aaa9c Added configure check for libutil.h. 2000-07-09 12:19:09 +00:00
Alexandre Julliard ad28d39d98 Fixed lstrcpynAtoW usage (reported by Stas Sergeev).
Small cleanups.
2000-07-09 11:20:59 +00:00
Stefan Leichter 00e7c3346d Started implementation of the functions GetDefaultCommConfigA/W. 2000-07-08 18:29:54 +00:00
Joerg Mayer 257ca83d04 Fixed the debugmsg help. 2000-07-08 11:45:13 +00:00
Alexandre Julliard 42acc339ed Split bidi16.c and network.c out of misc/ into their respective dlls. 2000-06-24 12:41:05 +00:00
Alexandre Julliard 917910324f Cleaned up a few inter-dll dependencies. 2000-06-23 16:13:33 +00:00
Frederic Boulanger f93dcc2532 CreateSpoolFile is called with a dos name, we have to make sure that
when we create the spoolfile we use the unix name associated to the
dos file name.
2000-06-15 00:29:54 +00:00
Mike McCormack 6a31f96111 - add prototypes for serial API functions
- correct existing serial API prototypes incorrectly using DWORD
  instead of HANDLE
- define more structures and values in serial API
2000-06-15 00:15:11 +00:00
Andreas Mohr c5648f2be3 Made the DLL version clash error message more verbose. 2000-06-12 01:18:11 +00:00
Dmitry Timoshkov 0072c88111 Implement NTDLL.towupper and NTDLL.towlower using already existing
case conversion tables. Replace all direct calls to towupper/towlower
either to NTDLL for core or to CRTDLL if latter already used in the
non core dll.
2000-06-08 20:05:18 +00:00
Alexandre Julliard 45fccb8c0c Fixed off-by-one error in string allocation. 2000-06-07 02:03:54 +00:00
Alexandre Julliard eac0e1837c Removed MSG_WineStartTicks (does not work for multiple address spaces
anyway).
2000-06-03 20:46:53 +00:00
Juergen Schmied 0dc0d4461b Fixed crash. 2000-06-03 00:08:24 +00:00
Andreas Mohr 2e011a5243 Lots of spelling fixes that accumulated in my tree again, made several
error msgs more verbose, doc updates.
2000-06-01 23:28:25 +00:00
Zoran Dzelajlija 846880b7e6 Basic Croatian language support. 2000-05-30 20:50:45 +00:00
Alexandre Julliard eeaae3cae9 Make child processes inherit command-line options through the
WINEOPTIONS environment variable.
2000-05-30 17:51:44 +00:00
Gerald Pfeifer 093af59b74 Fixed warning. 2000-05-30 15:28:37 +00:00
Alexandre Julliard c192ba2468 Exec a separate wine binary for every win32 process so that they run
in separate address spaces.
Run 16-bit tasks as Win32 threads, not processes.
2000-05-29 21:25:10 +00:00
James Juran 2fc028977d DEBUG_ExternalDebugger() needs to be a part of wine, not winedbg. 2000-05-26 01:14:55 +00:00
Patrik Stridvall cbab7705f1 Fixed issues found by winapi_test. 2000-05-18 00:52:08 +00:00
Dimitrie O. Paun 81eafedaf1 Moved DDEML into dlls/user. 2000-05-14 23:34:41 +00:00
Alexandre Julliard a01004d828 Added support for registry values larger than the server buffer.
When loading a registry file, automatically determine overlap between
key name and file contents based on the first key name.
Removed v1 saving code.
Save USER\.Default separately into ~/.wine/userdef.reg.
2000-05-14 22:57:57 +00:00
Alexandre Julliard 8c8237b756 Specify the service thread timers in ms instead of us. 2000-05-10 04:43:32 +00:00
Alexandre Julliard 246c360631 Reserve space for the PE header at the start of the .so file.
Store the export table inside the data section so that sections can be
properly aligned.
Build the relay function table directly in the .spec.c file.
Moved relay debugging functions to relay386.c.
2000-05-10 03:48:00 +00:00
Huw D M Davies e5565ff049 Strip the $$$PROTO.HIV bit from win2k SYSTEM and SOFTWARE hives. 2000-05-05 18:19:03 +00:00
Bertho Stultiens 5b8eb2d838 Mmap does not fail on zero-length files. 2000-05-03 17:35:10 +00:00
Patrik Stridvall c77ff5ef67 Fixed issues reported by winapi_check. 2000-04-29 14:26:13 +00:00
Juergen Schmied 6889c68680 Small fixes, removed asserts. 2000-04-28 19:59:48 +00:00
Rein Klazes 0a54d5a39f Implement mark and space parity generation. Accept one-and- a-half
stopbits: the most common uarts will generate this automatically when
there are 5 databits.
2000-04-28 14:44:33 +00:00
Patrik Stridvall e29dbc5814 Fixed some warnings. 2000-04-24 18:04:24 +00:00
Dimitrie O. Paun cb18dbf9ce Removed the last xmalloc calls. 2000-04-24 17:33:06 +00:00
Gerard Patel a7adda8280 Do not initialize dcb in BuildCommDCB[AndTimeouts]. 2000-04-23 19:58:44 +00:00
Alexandre Julliard 07d8446918 Implemented thread and (partial) module snapshots, based on the work
of Andreas Mohr <amohr@student.ei.uni-stuttgart.de>.
2000-04-16 19:45:05 +00:00
Alexandre Julliard c970904c2c Save the registry on server exit without client intervention.
Removed "alt" registry files since we now have symlinks and
WINEPREFIX to replace them.
2000-04-16 17:21:13 +00:00
Alexandre Julliard b44595283f Improved Winelib apps initialisation code. No longer need to link
winestub.o with Winelib apps.
2000-04-15 21:00:55 +00:00
Marcus Meissner a76eee94f0 Do not dereference a ptr we just checked being NULL. 2000-04-14 14:07:13 +00:00
Ove Kaaven b43b9d931b Follow symlinks when saving registry. 2000-04-14 14:05:43 +00:00
Eric Pouech 5f6419fafa Got rid of -debug wine's option (wine now requires an external debugger). 2000-04-13 19:29:11 +00:00
Alexandre Julliard 08b289d7a6 Moved SaveOnlyUpdatedKeys to wine.ini.
Use get_config_dir() instead of hardcoding ~/.wine
Simplified loading and saving routines.
2000-04-06 20:37:37 +00:00
Patrik Stridvall 54fe8380a1 Fixed some issues reported by winapi_check. 2000-04-06 20:21:16 +00:00
Alexandre Julliard fbace6eefe Added a per-drive FailReadOnly flag, and removed the global
--failreadonly option.
2000-04-04 20:35:45 +00:00
Alexandre Julliard a57d77a750 Call PROFILE_GetWineIniBool before starting to fill the request
buffer. Made new registry format the default.
2000-04-04 19:56:49 +00:00
Alexandre Julliard ef76a1c97d Michael Abd-El-Malek (Corel)
Changed irl.nls to eni.nls. Reviewed and fixed a lot of the NLS files
to be more compatible to Windows.
Added en_GB (used by Corel Linux 1.0,1.1) as alias for en_UK.

Jeff Tranter <jefft@corel.ca>
The measurement unit for Canadian English should be metric.
LANG_SUB_ENTRY did always return the first language due to missing {}.
2000-04-04 18:53:37 +00:00
Rein Klazes 7f383a88cb Added CTS, DSR and RingIndicator states to Window's semi-documented
modem line status register.
2000-03-30 20:23:32 +00:00
Ron Gage 7bfd079b37 Fixed bug reported by winapi_check. 2000-03-28 20:41:46 +00:00
Patrik Stridvall 2d6457c11a Added/fixed some documentation reported by winapi_check. 2000-03-28 20:22:59 +00:00
Patrik Stridvall 39fc90a7b2 Fixed some warnings. 2000-03-28 19:30:06 +00:00
Uwe Bonnes e7c6f50626 Use strerror in debug output. 2000-03-26 18:17:09 +00:00
Francois Gouget 6d77d3a1df Use min/max instead of MIN/MAX. 2000-03-25 21:44:35 +00:00
Alexandre Julliard 7f3418fba0 Store monitor size and depth in the generic structure.
Merged monitor driver into USER driver.
2000-03-25 17:30:13 +00:00
Alexandre Julliard 6ec108ab6e Moved FatalAppExit functions to win32/except.c.
Added a few uses of Callout instead of referencing USER functions
directly.
2000-03-24 21:42:15 +00:00
Patrik Stridvall fcfacb95a7 Added/fixed some documentation reported by winapi_check. 2000-03-24 20:46:04 +00:00
Alexandre Julliard 28c3a1baf3 Moved graphics initialisation to the x11drv/ttydrv dll init code.
Merged event, keyboard and mouse drivers into USER driver.
2000-03-20 18:21:19 +00:00
Dimitrie O. Paun 9ad9636725 Removed most calls to xmalloc/xrealloc. 2000-03-19 14:29:50 +00:00
Alexandre Julliard 1dac57f05f Created separate dlls for user,gdi,ttydrv,x11drv.
Fixed Winelib argc handling (thanks to Eric Pouech).
2000-03-19 12:08:09 +00:00
Alexandre Julliard 9b59da0dd9 Misc small cleanups. 2000-03-18 22:25:41 +00:00
Alexandre Julliard 62f824f7cb Avoid calling the *Rect USER functions from inside GDI.
Moved a few USER functions to a more appropriate location.
2000-03-18 22:12:33 +00:00