]> git.sur5r.net Git - bacula/bacula/commitdiff
kes Rework bsmtp date editing for Win32.
authorKern Sibbald <kern@sibbald.com>
Tue, 15 May 2007 09:32:58 +0000 (09:32 +0000)
committerKern Sibbald <kern@sibbald.com>
Tue, 15 May 2007 09:32:58 +0000 (09:32 +0000)
kes  Add new cats entry point so Win32 builds.

git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@4790 91ce42f0-d328-0410-95d8-f526ca767f89

bacula/src/cats/mysql.c
bacula/src/lib/bsnprintf.c
bacula/src/tools/bsmtp.c
bacula/technotes-2.1

index a8211c7934e882d1a69ae9d11e74ff49e657267b..6c4d6b09e44b97d26ffd8b332ebd73a10741791e 100644 (file)
@@ -268,7 +268,9 @@ db_close_database(JCR *jcr, B_DB *mdb)
  */
 void db_thread_cleanup()
 { 
+#ifndef HAVE_WIN32
    my_thread_end();
+#endif
 }
 
 /*
index 1785759a0eef7404b8e9880201cd31e8dad25717..55262f3f421f0cfb8252d9e243713642210bf286 100644 (file)
@@ -332,7 +332,7 @@ int bvsnprintf(char *buffer, int32_t maxlen, const char *format, va_list args)
             } else if (sizeof(char *) == 8) {
                value = va_arg(args, uint64_t);
             } else {
-               value = (uint64_t)va_arg(args, char *);
+               value = 0;             /* we have a problem */
             }
             currlen = fmtint(buffer, currlen, maxlen, value, 16, min, max, flags);
             break;
index 2701f7ba4e6f6e636b888891d32b041080c62f16..597cb34979d2363d2e5f808b8db943eb1a764408 100644 (file)
@@ -150,6 +150,7 @@ static void get_date_string(char *buf, int buf_len)
    time_t now = time(NULL);
    struct tm tm;
    char tzbuf[MAXSTRING];
+   long my_timezone;
 
    /* Add RFC822 date */
    (void)localtime_r(&now, &tm);
@@ -158,28 +159,23 @@ static void get_date_string(char *buf, int buf_len)
 #if defined(HAVE_MINGW)
 __MINGW_IMPORT long     _dstbias;
 #endif
-   long tzoffset = 0;
-
    _tzset();
+   my_timezone = _timezone;
+   my_timezone += _dstbias;
+   my_timezone /= 60;
 
-   tzoffset = _timezone;
-   tzoffset += _dstbias;
-   tzoffset /= 60;
-
-   size_t length = strftime(buf, buf_len, "%a, %d %b %Y %H:%M:%S", &tm);
-   sprintf(&buf[length], " %+2.2ld%2.2u", -tzoffset / 60, abs(tzoffset) % 60);
 #else
-   strftime(buf, buf_len, "%a, %d %b %Y %H:%M:%S", &tm);
    tzset();
-   timezone /= 60;                  /* timezone offset in mins */
+   my_timezone = timezone / 60;     /* timezone offset in mins */
    if (tm.tm_isdst == 1) {
-      timezone -= 60;              /* adjust for daylight savings */
+      my_timezone -= 60;            /* adjust for daylight savings */
    }
-   sprintf(tzbuf, " %+2.2ld%2.2u", -timezone / 60, abs(timezone) % 60);
+#endif
+   strftime(buf, buf_len, "%a, %d %b %Y %H:%M:%S", &tm);
+   sprintf(tzbuf, " %+2.2ld%2.2u", -my_timezone / 60, abs(my_timezone) % 60);
    strcat(buf, tzbuf);              /* add +0100 */
    strftime(tzbuf, sizeof(tzbuf), " (%Z)", &tm);
    strcat(buf, tzbuf);              /* add (CEST) */
-#endif
 }
 
 
index 6c8c042a00ccd322904a01d86469d6a4ecc2f849..bff28e562568694cb42492a04475ecd3bf2de801 100644 (file)
@@ -1,8 +1,11 @@
               Technical notes on version 2.1
 
 General:
+15May07
+kes  Rework bsmtp date editing for Win32.
+kes  Add new cats entry point so Win32 builds.
 14May07 
-kes  Attempt to fix bsmtp editing on OSes without %z editing. 
+kes  Attempt to fix bsmtp date editing on OSes without %z editing. 
      Fixes bug #854.
 kes  Do better checking for the MySQL 64 bit libraries looking for both
      .a and .so libraries.