Commit Graph

72 Commits

Author SHA1 Message Date
Guido van Rossum c222ec28a5 Patch by Tadayoshi Funaba (with some changes) to be smarter about
guessing what happened when strftime() returns 0.  Is it buffer
overflow or was the result simply 0 bytes long?  (This happens for an
empty format string, or when the format string is a single %Z and the
timezone is unknown.)  if the buffer is at least 256 times as long as
the format, assume the latter.
1999-02-23 00:00:10 +00:00
Guido van Rossum 360eb9f278 We don't support leap seconds, so the seconds field of a time 9-tuple
should be in the range [0-59].  Noted by Tadayoshi Funaba.
1999-02-22 16:19:52 +00:00
Guido van Rossum 446ccfe1ac The doc string for strptime had the arguments reversed -- the string
comes first, the format second!  Scott Cotton discovered this.
1999-01-07 18:29:26 +00:00
Guido van Rossum 0a6363d7e1 Get rid of the strptype() declaration -- on some BSD systems, it's a
conflict, and it should be declared in time.h anyway.
(Too bad if gcc -Wall won't be happy if it isn't declared...)
1999-01-03 13:00:34 +00:00
Guido van Rossum 3886bb6997 Add DL_EXPORT() to all modules that could possibly be used
on BeOS or Windows.
1998-12-04 18:50:17 +00:00
Guido van Rossum c20687355b Make gcc -Wall happy:
(1) add dummy decl for strptime();
(2) move the code to set accept2dyear to the front of inittime().
1998-10-07 16:35:25 +00:00
Guido van Rossum 2645241add Fixes for OS/2 by Jeff Rush. 1998-09-28 22:07:11 +00:00
Guido van Rossum cfbaecc546 Y2K fix affecting asctime(), mktime(), strftime().
2-digit years are now converted using rules that are (according to
Fredrik Lundh) recommended by POSIX or X/Open: 0-68 mean 2000-2068,
69-99 mean 1969-1999.

2-digit years are now only accepted if time.accept2dyear is set to a
nonzero integer; if it is zero or not an integer or absent, only year
values >= 1900 are accepted.  Year values 100-1899 and negative year
values are never accepted.

The initial value of time.accept2dyear depends on the environment
variable PYTHONY2K: if PYTHONY2K is set and non-empty,
time.accept2dyear is initialized to 0; if PYTHONY2K is empty or not
set, time.accept2dyear is initialized to 0.
1998-08-25 14:51:12 +00:00
Guido van Rossum bcc207484a Changes for BeOS, QNX and long long, by Chris Herborth. 1998-08-04 22:53:56 +00:00
Guido van Rossum 0ef577b966 Added doc strings. 1998-06-27 20:38:36 +00:00
Guido van Rossum 87ce7bbc39 Added strptime, if it exists. Modified after a patch by Jesse Hallio. 1998-06-09 16:30:31 +00:00
Guido van Rossum 1f41f846a3 Instead of calling mktime(), which has all sorts of unwanted side
effects, simply zero out the struct tm buffer before using it; this
should take care of the BSD folks' concern just as well.
1998-04-27 19:04:26 +00:00
Guido van Rossum 60cd813810 Check for HAVE_MKTIME (if you don't have it, some tests will fail, but
at least the build will now succeed).  For Sony NEWS-OS, BSD 4.3 based.
1998-03-06 17:16:21 +00:00
Guido van Rossum 7853570651 Raise ValueError: "unconvertible time" when ctime() returns NULL,
instead of dumping core.
1998-03-03 22:19:10 +00:00
Guido van Rossum 1d0d7e4e48 At Jeff Rush' request, add Py_BEGIN/END_ALLOW_THREADS around call to
DosSleep().
1997-12-29 20:03:10 +00:00
Guido van Rossum be1eb0d9ed (1) call mktime() just before strftime(); it normalizes the buffer and
may set the timezone name for BSD systems...

(2) fake all of the timezone variables for the mac.
1997-12-08 21:56:43 +00:00
Guido van Rossum 7bf22de753 Patch for QNX, by Chris Herborth. 1997-12-02 20:34:19 +00:00
Guido van Rossum 8e9ebfd337 os2 patch by Jeff Rush 1997-11-22 21:53:48 +00:00
Guido van Rossum 8607ae2e57 Move the Py_{{BEGIN,END}_ALLOW,BLOCK}_THREADS macros in time_sleep()
to inside floatsleep().  This is necessary because floatsleep() does
the error handling and it must have grabbed the interpreter lock and
thread state before it can do so.
1997-11-03 22:04:46 +00:00
Guido van Rossum e6a4b7bf3e timezone support for macintosh (Jack) 1997-10-08 15:27:56 +00:00
Guido van Rossum 3917c22125 Win32 precision clock() -- Mark Hammond. 1997-04-02 05:35:28 +00:00
Guido van Rossum a78bfe1985 Issue a more meaningful error if strftime keeps returning a NULL pointer.
Run the loop up to and including 8k.
1997-02-14 16:35:10 +00:00
Barry Warsaw 4a6cf4167b Formatting, and minor error detection 1997-01-13 22:44:55 +00:00
Guido van Rossum 52174577eb Added #ifdef around ``extern int ftime();'' for MS WINDOWS (which has
a conflicting definition somewhere).
Resolved line wrap for error message in ins().
1996-12-09 18:38:52 +00:00
Barry Warsaw ec775c52a2 ins(): missed a renaming in a string: dictinsert =>
PyDict_SetItemString.

GvR: note the long line > 80 chars.  Wrapping suggestions?
1996-12-09 18:24:35 +00:00
Barry Warsaw 9a2a8a8d31 Greatly renamed. 1996-12-06 23:32:14 +00:00
Guido van Rossum 1bb126fa13 Add extern decl of ftime() to make gcc -Wall happy. 1996-12-06 20:17:44 +00:00
Guido van Rossum 0b1ff66920 Should compare errno to 0, not NULL 1996-11-02 17:31:22 +00:00
Guido van Rossum d266eb460e New permission notice, includes CNRI. 1996-10-25 14:44:06 +00:00
Guido van Rossum 6e8583dcb3 Check for NULL pointer returned from localtime()/gmtime(). 1996-10-08 14:19:52 +00:00
Guido van Rossum b2fb36498d Sleep() turns out to be win32 specific.
The timezone etc. overrides are win16 specific.
Hope I got this right now...
1996-09-07 00:47:35 +00:00
Guido van Rossum cac6c72105 Some changes for better Windows portability. 1996-09-06 13:34:02 +00:00
Guido van Rossum 99d90c0d0e Include "mymath.h" instead of manually declaring math functions. 1996-08-08 19:17:45 +00:00
Guido van Rossum bceeac8dc1 Watcom changes.
Add mktime() overflow test and make it NeXT robust by initializing
the structure from localtime().
1996-05-23 22:53:47 +00:00
Guido van Rossum 1b66a4f01d default CLOCKS_PER_SEC to CLK_TCK if it exists 1996-02-25 04:50:33 +00:00
Guido van Rossum 5416e20037 mark strftime as varargs 1996-02-13 00:14:09 +00:00
Jack Jansen 8ccfc93c2f Removed unused variable 1995-10-03 14:39:44 +00:00
Guido van Rossum 8d8c1eeed7 added time.strftime() 1995-09-13 17:38:35 +00:00
Guido van Rossum cc08112ff4 tiny additions for Windows 3.1 1995-03-14 15:05:41 +00:00
Guido van Rossum a320fd308c changes for MPW 1995-03-09 12:14:15 +00:00
Guido van Rossum 8239f0ffa0 fix leaks 1995-01-22 00:49:01 +00:00
Guido van Rossum 524b588553 Added 1995 to copyright message.
Setup.in: clarified Tk comments somewhat.
structmodule.c: use memcpy() instead of double precision assignment.
1995-01-04 19:10:35 +00:00
Guido van Rossum 3bbc62e9c2 Another bulky set of minor changes.
Note addition of gethostbyaddr() and improved repr() for sockets,
renaming of md5.md5() to md5.new(), and fixing of leaks in threads.
1995-01-02 19:30:30 +00:00
Guido van Rossum 7b1e974b4b Makefile.pre.in: add $(OPT) to link command
audioop.c: fix for MPW
config.c.in: save original argc/argv for Lance
rotormodule.c: new coding conventions
timemodule.c: add casts for Lance
1994-08-29 10:46:42 +00:00
Guido van Rossum b6775db241 Merge alpha100 branch back to main trunk 1994-08-01 11:34:53 +00:00
Guido van Rossum b376a4ad18 * timemodule.c: Add hack for Solaris 2.
* posixmodule.c: don't prototype getcwd() -- it's not portable...
* mappingobject.c: double-check validity of last_name_char in
  dict{lookup,insert,remove}.
* arraymodule.c: need memmove only for non-STDC Suns.
* Makefile: comment out HTML_LIBS and XT_USE by default
* pythonmain.c: don't prototype getopt() -- it's not standardized
* socketmodule.c: cast flags arg to {get,set}sockopt() and addrbuf arg to
  recvfrom() to (ANY*).
* pythonrun.c (initsigs): fix prototype, make it static
* intobject.c (LONG_BIT): only #define it if not already defined
* classobject.[ch]: remove all references to unused instance_convert()
* mappingobject.c (getmappingsize): Don't return NULL in int function.
1993-11-23 17:53:17 +00:00
Guido van Rossum e22e6442b7 * config.c: different default PYTHONPATH for MS-DOS
* timemodule.c: change #ifdef TURBO_C into #ifdef MSDOS
* posixmodule.c: MSDOS changes by Marcel van der Peijl (Digicash)
* stropmodule.c: use C isspace(c) to test for whitespace; add
  whitespace, lowercase and uppercase variables to the module.
1993-07-09 10:51:31 +00:00
Guido van Rossum f1dc566328 * Makefile: added all: and default: targets.
* many files: made some functions static; removed "extern int errno;".
* frozenmain.c: fixed bugs introduced on 24 June...
* flmodule.c: remove 1.5 bw compat hacks, add new functions in 2.2a
  (and some old functions that were omitted).
* timemodule.c: added MSDOS floatsleep version .
* pgenmain.c: changed exit() to goaway() and added defn of goaway().
* intrcheck.c: add hack (to UNIX only) so interrupting 3 times
  will exit from a hanging program.  The second interrupt prints
  a message explaining this to the user.
1993-07-05 10:31:29 +00:00
Guido van Rossum 9e90a672b4 * pythonmain.c: -k option, usage message, more environment flags.
(the latter also in frozenmain.c)
* ceval.c: global 'killprint' flag raises exception when printing an
  expression statement's value (useful for finding stray output)
* timemodule.c: add asctime() and ctime().  Change julian date to
  1-based origin (as intended and documented).
* Removed unused DO_TIMES stuff from timemodule.c.  Added 'epoch' and
  'day0' globals (year where time.time() == 0 and day of the week the
  epoch started).
1993-06-24 11:10:19 +00:00
Guido van Rossum 234f942aef * Added gmtime/localtime/mktime and SYSV timezone globals to timemodule.c.
Added $(SYSDEF) to its build rule in Makefile.
* cgensupport.[ch], modsupport.[ch]: removed some old stuff.  Also
  changed files that still used it...  And made several things static
  that weren't but should have been...  And other minor cleanups...
* listobject.[ch]: add external interfaces {set,get}listslice
* socketmodule.c: fix bugs in new send() argument parsing.
* sunaudiodevmodule.c: added flush() and close().
1993-06-17 12:35:49 +00:00