git.cweiske.de
/
enigma2.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
3c5de61
)
epgcache.cpp: fix restoring the timezone after mhwepg read
author
ghost
<andreas.monzner@multimedia-labs.de>
Fri, 21 Aug 2009 09:53:46 +0000
(11:53 +0200)
committer
ghost
<andreas.monzner@multimedia-labs.de>
Fri, 21 Aug 2009 09:53:46 +0000
(11:53 +0200)
lib/dvb/epgcache.cpp
patch
|
blob
|
history
diff --git
a/lib/dvb/epgcache.cpp
b/lib/dvb/epgcache.cpp
index 4ea47963c0d939d606ac75a1bd270a24504c3a81..f80e1775d5fed8aa998cfa0e499f9bdf5454b373 100644
(file)
--- a/
lib/dvb/epgcache.cpp
+++ b/
lib/dvb/epgcache.cpp
@@
-2811,6
+2811,7
@@
void eEPGCache::channel_data::timeMHW2DVB( int minutes, u_char *return_time)
void eEPGCache::channel_data::timeMHW2DVB( u_char day, u_char hours, u_char minutes, u_char *return_time)
// For date plus time of day
{
void eEPGCache::channel_data::timeMHW2DVB( u_char day, u_char hours, u_char minutes, u_char *return_time)
// For date plus time of day
{
+ char tz_saved[1024];
// Remove offset in mhw time.
__u8 local_hours = hours;
if ( hours >= 16 )
// Remove offset in mhw time.
__u8 local_hours = hours;
if ( hours >= 16 )
@@
-2823,6
+2824,8
@@
void eEPGCache::channel_data::timeMHW2DVB( u_char day, u_char hours, u_char minu
time_t dt = ::time(0);
char *old_tz = getenv( "TZ" );
time_t dt = ::time(0);
char *old_tz = getenv( "TZ" );
+ if (old_tz)
+ strcpy(tz_saved, old_tz);
putenv("TZ=CET-1CEST,M3.5.0/2,M10.5.0/3");
tzset();
putenv("TZ=CET-1CEST,M3.5.0/2,M10.5.0/3");
tzset();
@@
-2845,7
+2848,7
@@
void eEPGCache::channel_data::timeMHW2DVB( u_char day, u_char hours, u_char minu
if ( old_tz == NULL )
unsetenv( "TZ" );
else
if ( old_tz == NULL )
unsetenv( "TZ" );
else
-
putenv( old_tz
);
+
setenv("TZ", tz_saved, 1
);
tzset();
// Calculate MJD according to annex in ETSI EN 300 468
tzset();
// Calculate MJD according to annex in ETSI EN 300 468