Mercurial > noffle
view src/request.h @ 279:49b452b667a6 noffle
[svn] * src/util.c: localTimeDiff() cached its value and recalculated it every
hour of clock time, regardless of the time the calculated was based on.
This is potentially dangerous at daylight saving changes. So instead
use the cached last result only when the new request is to be based on
a time in the same hour as the cached result.
* src/util.c: Replace the alternate Utl_mktimeGMT() implementation used when
timegm() is not available. The previous version, as suggested by the
glibc timegm() man page, used setenv() and unsetenv() for changing the
environment. These aren't POSIX function, and the POSIX putenv()
(a) is tricky to manage if the same var is being constantly update and
memory isn't to leak, and (b) provides no way to remove an environment
entry. So change to an implementation Wget uses. This should compile on
not glibc systems - the previous version failed to build on Solaris.
author | bears |
---|---|
date | Sun, 17 Nov 2002 15:18:19 +0000 |
parents | 32ba1198c6fa |
children | 6f99218719e4 |
line wrap: on
line source
/* request.h Collection of requested articles. $Id: request.h 51 2000-05-05 23:49:38Z uh1763 $ */ #ifndef REQ_H #define REQ_H #if HAVE_CONFIG_H #include <config.h> #endif #include "common.h" /* Is request for message msgId from server serv already recorded? This function has no error detection facility. On error, FALSE is returned. Nevertheless, errors are logged. */ Bool Req_contains( const char *serv, const char *msgId ); /* Add request for message "msgId" from server "serv". Return TRUE if successful. */ Bool Req_add( const char *serv, const char *msgId ); /* Remove request for message msgIg from server serv. This function does not return any errors. Nevertheless, they are logged. */ void Req_remove( const char *serv, const char *msgId ); /* Begin iteration through all messages requested from one server. Return TRUE if there are any requests. Save first message ID in msgId. On error, it is logged, and FALSE is returned. */ Bool Req_first( const char *serv, Str msgId ); /* Continue iteration. Return TRUE on success, FALSE when there are no more requests. Save message ID in msgId. On error, it is logged, and FALSE is returned. */ Bool Req_next( Str msgId ); /* Get exclusive access to the request files. Refresh cache as necessary. */ Bool Req_open(void); /* Write changes to disk */ void Req_close(void); #endif