summaryrefslogtreecommitdiff
path: root/source/q_shared.c
diff options
context:
space:
mode:
Diffstat (limited to 'source/q_shared.c')
-rw-r--r--source/q_shared.c71
1 files changed, 11 insertions, 60 deletions
diff --git a/source/q_shared.c b/source/q_shared.c
index 32a1707..67772ef 100644
--- a/source/q_shared.c
+++ b/source/q_shared.c
@@ -1038,6 +1038,16 @@ size_t Q_UnescapeString( char *out, const char *in, size_t bufsize, escape_t fla
}
#endif
+size_t Q_FormatFileSize( char *dest, size_t bytes, size_t size ) {
+ if( bytes >= 1000000 ) {
+ return Q_snprintf( dest, size, "%2.1fM", ( float )bytes / 1000000 );
+ }
+ if( bytes >= 1000 ) {
+ return Q_snprintf( dest, size, "%3"PRIz"K", bytes / 1000 );
+ }
+ return Q_snprintf( dest, size, "%3"PRIz, bytes );
+}
+
/*
============
va
@@ -1061,68 +1071,9 @@ char *va( const char *format, ... ) {
return buffers[index];
}
-
static char com_token[4][MAX_TOKEN_CHARS];
static int com_tokidx;
-static char *COM_GetToken( void ) {
- return com_token[com_tokidx++ & 3];
-}
-
-/*
-==============
-COM_SimpleParse
-
-Parse a token out of a string.
-==============
-*/
-char *COM_SimpleParse( const char **data_p, int *length ) {
- int c;
- int len;
- const char *data;
- char *s = COM_GetToken();
-
- data = *data_p;
- len = 0;
- s[0] = 0;
- if( length ) {
- *length = 0;
- }
-
- if( !data ) {
- *data_p = NULL;
- return s;
- }
-
-// skip whitespace
- while( ( c = *data ) <= ' ' ) {
- if( c == 0 ) {
- *data_p = NULL;
- return s;
- }
- data++;
- }
-
-// parse a regular word
- do {
- if( len < MAX_TOKEN_CHARS - 1 ) {
- s[len++] = c;
- }
- data++;
- c = *data;
- } while( c > 32 );
-
- s[len] = 0;
-
- if( length ) {
- *length = len;
- }
-
- *data_p = data;
- return s;
-}
-
-
/*
==============
COM_Parse
@@ -1135,7 +1086,7 @@ char *COM_Parse( const char **data_p ) {
int c;
int len;
const char *data;
- char *s = COM_GetToken();
+ char *s = com_token[com_tokidx++ & 3];
data = *data_p;
len = 0;