Two fixes for dtmail
authorUlrich Wilkens <mail@uwilkens.de>
Thu, 30 Aug 2012 01:09:48 +0000 (03:09 +0200)
committerJon Trulson <jon@radscan.com>
Thu, 30 Aug 2012 02:40:23 +0000 (20:40 -0600)
cde/programs/dtmail/dtmail/MsgScrollingList.C
cde/programs/dtmail/include/MotifApp/Application.h
cde/programs/dtmail/libDtMail/RFC/RFCMailValues.C

index 22d041c46536e154a06674f34eba6edc44502abf..a2deab761f328ea83f8f424f9b713c1efd37071c 100644 (file)
@@ -2608,7 +2608,9 @@ MsgScrollingList::formatHeader(DtMailHeaderLine & info,
     {
        DtMailValueDate ds = ((info.header_values[1])[0])->toDate();
 
-       if (ds.dtm_date && ds.dtm_tz_offset_secs)
+#define USE_MAX_TZ_SECONDS     (60 * 60 * 12)
+       if (ds.dtm_date && ds.dtm_tz_offset_secs >= -USE_MAX_TZ_SECONDS
+                       && ds.dtm_tz_offset_secs <=  USE_MAX_TZ_SECONDS)
        {
 #define USE_YEAR_FORMAT_SECONDS        (60 * 60 * 24 * 180)
            time_t now;
index 2d19e0ab6bcbd2dc1dd9b39dc55295fa65291267..77bd29774b0c451644a329c7bb45572d77af2171 100644 (file)
@@ -133,8 +133,13 @@ class Application : public UIComponent {
     virtual void shutdown() = 0;
     
     // Functions to manipulate group execution privileges
+#if defined(CSRG_BASED)
+    void       disableGroupPrivileges(void) { (void) setegid(_originalRgid); }
+    void       enableGroupPrivileges(void)  { (void) setegid(_originalEgid); }
+#else
     void       disableGroupPrivileges(void) { (void) setgid(_originalRgid); }
     void       enableGroupPrivileges(void)  { (void) setgid(_originalEgid); }
+#endif
     gid_t      originalEgid(void)      { return _originalEgid; }
     gid_t      originalRgid(void)      { return _originalRgid; }
 
index 00965d7866b4ccd43fd7d7ed3a87157363f931a1..38d53ebfedc81671b1df5a393deac7f8a5454f24 100644 (file)
@@ -493,6 +493,8 @@ RFCValue::toDate(void)
        date.dtm_date = SafeMktime(&new_time);
 #ifdef SVR4
        date.dtm_tz_offset_secs = timezone;
+#else
+       date.dtm_tz_offset_secs = new_time.tm_gmtoff;
 #endif
     }
     else {