git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@3734 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
This commit is contained in:
David Lawrence Ramsey 2006-07-04 22:17:39 +00:00
parent 9f2e3f7654
commit afa1542b76

View File

@ -633,23 +633,29 @@ void browser_refresh(void)
} else } else
foo = mallocstrcpy(NULL, _("(dir)")); foo = mallocstrcpy(NULL, _("(dir)"));
} else { } else {
unsigned long result = st.st_size;
char modifier;
foo = charalloc(uimax_digits + 4); foo = charalloc(uimax_digits + 4);
/* Bytes. */ /* Bytes. */
if (st.st_size < (1 << 10)) if (st.st_size < (1 << 10))
sprintf(foo, "%4u B", (unsigned int)st.st_size); modifier = ' ';
/* Kilobytes. */ /* Kilobytes. */
else if (st.st_size < (1 << 20)) else if (st.st_size < (1 << 20)) {
sprintf(foo, "%4u KB", result >>= 10;
(unsigned int)(st.st_size >> 10)); modifier = 'K';
/* Megabytes. */ /* Megabytes. */
else if (st.st_size < (1 << 30)) } else if (st.st_size < (1 << 30)) {
sprintf(foo, "%4u MB", result >>= 20;
(unsigned int)(st.st_size >> 20)); modifier = 'M';
/* Gigabytes. */ /* Gigabytes. */
else } else {
sprintf(foo, "%4u GB", result >>= 30;
(unsigned int)(st.st_size >> 30)); modifier = 'G';
}
sprintf(foo, "%4lu %cB", result, modifier);
} }
/* Make sure foo takes up no more than foomaxlen columns. */ /* Make sure foo takes up no more than foomaxlen columns. */