diff options
| author | Wilmer van der Gaast <wilmer@gaast.net> | 2010-06-06 00:21:02 +0100 | 
|---|---|---|
| committer | Wilmer van der Gaast <wilmer@gaast.net> | 2010-06-06 00:21:02 +0100 | 
| commit | b308cf9bafbdf76da73a57607b65c4763aa3057b (patch) | |
| tree | c686906b479a0edd52b18a213e1d420f7343855d /protocols/jabber/jabber_util.c | |
| parent | 3ab1d317831a6c1830bb648a1a8d63a41c92f651 (diff) | |
| parent | e774815bc621af90bb64ca314b84367659c5a005 (diff) | |
Merging libpurple branch into killerbee. It's fairly usable already, and
Debian packaging is now properly separated. This also picks up a load of
stuff from mainline it seems.
Diffstat (limited to 'protocols/jabber/jabber_util.c')
| -rw-r--r-- | protocols/jabber/jabber_util.c | 29 | 
1 files changed, 3 insertions, 26 deletions
| diff --git a/protocols/jabber/jabber_util.c b/protocols/jabber/jabber_util.c index bd2fbe8c..4bc9e3a8 100644 --- a/protocols/jabber/jabber_util.c +++ b/protocols/jabber/jabber_util.c @@ -670,10 +670,9 @@ int jabber_buddy_remove_bare( struct im_connection *ic, char *bare_jid )  time_t jabber_get_timestamp( struct xt_node *xt )  { -	struct tm tp, utc;  	struct xt_node *c; -	time_t res, tres;  	char *s = NULL; +	struct tm tp;  	for( c = xt->children; ( c = xt_find_node( c, "x" ) ); c = c->next )  	{ @@ -691,30 +690,8 @@ time_t jabber_get_timestamp( struct xt_node *xt )  	tp.tm_year -= 1900;  	tp.tm_mon --; -	tp.tm_isdst = -1; /* GRRRRRRRRRRR */ -	 -	res = mktime( &tp ); -	/* Problem is, mktime() just gave us the GMT timestamp for the -	   given local time... While the given time WAS NOT local. So -	   we should fix this now. -	 -	   Now I could choose between messing with environment variables -	   (kludgy) or using timegm() (not portable)... Or doing the -	   following, which I actually prefer... */ -	gmtime_r( &res, &utc ); -	utc.tm_isdst = -1; /* Once more: GRRRRRRRRRRRRRRRRRR!!! */ -	if( utc.tm_hour == tp.tm_hour && utc.tm_min == tp.tm_min ) -		/* Sweet! We're in UTC right now... */ -		return res; -	 -	tres = mktime( &utc ); -	res += res - tres; -	 -	/* Yes, this is a hack. And it will go wrong around DST changes. -	   BUT this is more likely to be threadsafe than messing with -	   environment variables, and possibly more portable... */ -	 -	return res; +	 +	return mktime_utc( &tp );  }  struct jabber_error *jabber_error_parse( struct xt_node *node, char *xmlns ) | 
