Add TB and PB cases to g_format_size_for_display

This commit is contained in:
Christian Persch 2008-05-24 21:00:11 +02:00 committed by Alexander Larsson
parent 1ffedec41f
commit b3156508c4

View File

@ -1742,9 +1742,12 @@ g_build_filename (const gchar *first_element,
return str;
}
#define KILOBYTE_FACTOR 1024.0
#define MEGABYTE_FACTOR (1024.0 * 1024.0)
#define GIGABYTE_FACTOR (1024.0 * 1024.0 * 1024.0)
#define KILOBYTE_FACTOR (G_GOFFSET_CONSTANT (1024))
#define MEGABYTE_FACTOR (KILOBYTE_FACTOR * KILOBYTE_FACTOR)
#define GIGABYTE_FACTOR (MEGABYTE_FACTOR * KILOBYTE_FACTOR)
#define TERABYTE_FACTOR (GIGABYTE_FACTOR * KILOBYTE_FACTOR)
#define PETABYTE_FACTOR (TERABYTE_FACTOR * KILOBYTE_FACTOR)
#define EXABYTE_FACTOR (PETABYTE_FACTOR * KILOBYTE_FACTOR)
/**
* g_format_size_for_display:
@ -1775,19 +1778,34 @@ g_format_size_for_display (goffset size)
if (size < (goffset) MEGABYTE_FACTOR)
{
displayed_size = (gdouble) size / KILOBYTE_FACTOR;
displayed_size = (gdouble) size / (gdouble) KILOBYTE_FACTOR;
return g_strdup_printf (_("%.1f KB"), displayed_size);
}
else if (size < (goffset) GIGABYTE_FACTOR)
{
displayed_size = (gdouble) size / MEGABYTE_FACTOR;
displayed_size = (gdouble) size / (gdouble) MEGABYTE_FACTOR;
return g_strdup_printf (_("%.1f MB"), displayed_size);
}
else
else if (size < (goffset) TERABYTE_FACTOR)
{
displayed_size = (gdouble) size / GIGABYTE_FACTOR;
displayed_size = (gdouble) size / (gdouble) GIGABYTE_FACTOR;
return g_strdup_printf (_("%.1f GB"), displayed_size);
}
else if (size < (goffset) PETABYTE_FACTOR)
{
displayed_size = (gdouble) size / (gdouble) TERABYTE_FACTOR;
return g_strdup_printf (_("%.1f TB"), displayed_size);
}
else if (size < (goffset) EXABYTE_FACTOR)
{
displayed_size = (gdouble) size / (gdouble) PETABYTE_FACTOR;
return g_strdup_printf (_("%.1f PB"), displayed_size);
}
else
{
displayed_size = (gdouble) size / (gdouble) EXABYTE_FACTOR;
return g_strdup_printf (_("%.1f EB"), displayed_size);
}
}
}