[haiku-commits] Re: r37934 - in haiku/trunk: headers/private/libroot/time src/preferences/time

  • From: "Axel Dörfler" <axeld@xxxxxxxxxxxxxxxx>
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Fri, 06 Aug 2010 08:38:39 +0200

zooey@xxxxxxxxxxxxxxx wrote:
> Log:
> * the Time preflet now writes timezone info required by the POSIX 
> layer into
>   a specific file (/boot/common/settings/libroot_timezone_info)

Why not omit the "libroot"?

> +// holds persistent info set by Time preflet
> +struct time_zone_info {
> +     char    short_std_name[skTimeZoneInfoNameMax];
> +     char    short_dst_name[skTimeZoneInfoNameMax];
> +     uint32  offset_from_gmt;
> +     bool    uses_daylight_saving;
> +};

I miss a _PACKED here.

> +     if (status == B_OK) {
> +             BPrivate::time_zone_info tzInfo;
> +             tzInfo.offset_from_gmt = timeZone.OffsetFromGMT();
> +             tzInfo.uses_daylight_saving = timeZone.
> SupportsDaylightSaving();
> +             strlcpy(tzInfo.short_std_name, timeZone.ShortName().String(),
> +                     BPrivate::skTimeZoneInfoNameMax);
> +             strlcpy(tzInfo.short_dst_name,
> +                     timeZone.ShortDaylightSavingName().String(),
> +                     BPrivate::skTimeZoneInfoNameMax);
> +             file.Write(&tzInfo, sizeof(tzInfo));

On disk files should be endian aware.

Bye,
   Axel.


Other related posts: