-/*\r
-Copyright (C) 1999-2007 id Software, Inc. and contributors.\r
-For a list of contributors, see the accompanying CONTRIBUTORS file.\r
-\r
-This file is part of GtkRadiant.\r
-\r
-GtkRadiant is free software; you can redistribute it and/or modify\r
-it under the terms of the GNU General Public License as published by\r
-the Free Software Foundation; either version 2 of the License, or\r
-(at your option) any later version.\r
-\r
-GtkRadiant is distributed in the hope that it will be useful,\r
-but WITHOUT ANY WARRANTY; without even the implied warranty of\r
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
-GNU General Public License for more details.\r
-\r
-You should have received a copy of the GNU General Public License\r
-along with GtkRadiant; if not, write to the Free Software\r
-Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA\r
-*/\r
-\r
-// cmdlib.h\r
-\r
-#ifndef __CMDLIB__\r
-#define __CMDLIB__\r
-\r
-#include "bytebool.h"\r
-\r
-#ifdef _WIN32\r
-#pragma warning(disable : 4244) // MIPS\r
-#pragma warning(disable : 4136) // X86\r
-#pragma warning(disable : 4051) // ALPHA\r
-\r
-#pragma warning(disable : 4018) // signed/unsigned mismatch\r
-#pragma warning(disable : 4305) // truncate from double to float\r
-\r
-#pragma check_stack(off)\r
-\r
-#endif\r
-\r
-#include <stdio.h>\r
-#include <string.h>\r
-#include <stdlib.h>\r
-#include <errno.h>\r
-#include <ctype.h>\r
-#include <time.h>\r
-#include <stdarg.h>\r
-\r
-#ifdef _WIN32\r
-\r
-#pragma intrinsic( memset, memcpy )\r
-\r
-#endif\r
-\r
-\r
-#define MAX_OS_PATH 1024\r
-#define MEM_BLOCKSIZE 4096\r
-\r
-// the dec offsetof macro doesnt work very well...\r
-#define myoffsetof(type,identifier) ((size_t)&((type *)0)->identifier)\r
-\r
-#define SAFE_MALLOC\r
-#ifdef SAFE_MALLOC\r
-void *safe_malloc( size_t size );\r
-void *safe_malloc_info( size_t size, char* info );\r
-#else\r
-#define safe_malloc(a) malloc(a)\r
-#endif /* SAFE_MALLOC */\r
-\r
-// set these before calling CheckParm\r
-extern int myargc;\r
-extern char **myargv;\r
-\r
-char *strlower (char *in);\r
-int Q_strncasecmp( const char *s1, const char *s2, int n );\r
-int Q_stricmp( const char *s1, const char *s2 );\r
-void Q_getwd( char *out );\r
-\r
-int Q_filelength (FILE *f);\r
-int FileTime( const char *path );\r
-\r
-void Q_mkdir( const char *path );\r
-\r
-extern char qdir[1024];\r
-extern char gamedir[1024];\r
-extern char writedir[1024];\r
-extern char *moddirparam;\r
-void SetQdirFromPath( const char *path);\r
-char *ExpandArg( const char *path ); // from cmd line\r
-char *ExpandPath( const char *path ); // from scripts\r
-char *ExpandGamePath (const char *path);\r
-char *ExpandPathAndArchive( const char *path );\r
-void ExpandWildcards( int *argc, char ***argv );\r
-\r
-\r
-double I_FloatTime( void );\r
-\r
-void Error( const char *error, ... );\r
-int CheckParm( const char *check );\r
-\r
-FILE *SafeOpenWrite( const char *filename );\r
-FILE *SafeOpenRead( const char *filename );\r
-void SafeRead (FILE *f, void *buffer, int count);\r
-void SafeWrite (FILE *f, const void *buffer, int count);\r
-\r
-int LoadFile( const char *filename, void **bufferptr );\r
-int LoadFileBlock( const char *filename, void **bufferptr );\r
-int TryLoadFile( const char *filename, void **bufferptr );\r
-void SaveFile( const char *filename, const void *buffer, int count );\r
-qboolean FileExists( const char *filename );\r
-\r
-void DefaultExtension( char *path, const char *extension );\r
-void DefaultPath( char *path, const char *basepath );\r
-void StripFilename( char *path );\r
-void StripExtension( char *path );\r
-\r
-void ExtractFilePath( const char *path, char *dest );\r
-void ExtractFileBase( const char *path, char *dest );\r
-void ExtractFileExtension( const char *path, char *dest );\r
-\r
-int ParseNum (const char *str);\r
-\r
-short BigShort (short l);\r
-short LittleShort (short l);\r
-int BigLong (int l);\r
-int LittleLong (int l);\r
-float BigFloat (float l);\r
-float LittleFloat (float l);\r
-\r
-\r
-char *COM_Parse (char *data);\r
-\r
-extern char com_token[1024];\r
-extern qboolean com_eof;\r
-\r
-char *copystring(const char *s);\r
-\r
-\r
-void CRC_Init(unsigned short *crcvalue);\r
-void CRC_ProcessByte(unsigned short *crcvalue, byte data);\r
-unsigned short CRC_Value(unsigned short crcvalue);\r
-\r
-void CreatePath( const char *path );\r
-void QCopyFile( const char *from, const char *to );\r
-\r
-extern qboolean archive;\r
-extern char archivedir[1024];\r
-\r
-// sleep for the given amount of milliseconds\r
-void Sys_Sleep(int n);\r
-\r
-// for compression routines\r
-typedef struct\r
-{\r
- void *data;\r
- int count, width, height;\r
-} cblock_t;\r
-\r
-\r
-#endif\r
+/*
+ Copyright (C) 1999-2006 Id Software, Inc. and contributors.
+ For a list of contributors, see the accompanying CONTRIBUTORS file.
+
+ This file is part of GtkRadiant.
+
+ GtkRadiant is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ GtkRadiant is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with GtkRadiant; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+// cmdlib.h
+
+#ifndef __CMDLIB__
+#define __CMDLIB__
+
+#include "bytebool.h"
+
+#ifdef _WIN32
+#pragma warning(disable : 4244) // MIPS
+#pragma warning(disable : 4136) // X86
+#pragma warning(disable : 4051) // ALPHA
+
+#pragma warning(disable : 4018) // signed/unsigned mismatch
+#pragma warning(disable : 4305) // truncate from double to float
+
+#pragma check_stack(off)
+
+#endif
+
+#include <stdio.h>
+#include <string.h>
+#include <stdlib.h>
+#include <errno.h>
+#include <ctype.h>
+#include <time.h>
+#include <stdarg.h>
+
+#ifdef _WIN32
+
+#pragma intrinsic( memset, memcpy )
+
+#endif
+
+
+#ifdef PATH_MAX
+#define MAX_OS_PATH PATH_MAX
+#else
+#define MAX_OS_PATH 4096
+#endif
+#define MEM_BLOCKSIZE 4096
+
+// the dec offsetof macro doesnt work very well...
+#define myoffsetof( type,identifier ) ( (size_t)& ( (type *)0 )->identifier )
+
+#define SAFE_MALLOC
+#ifdef SAFE_MALLOC
+void *safe_malloc( size_t size );
+void *safe_malloc_info( size_t size, char* info );
+#else
+#define safe_malloc( a ) malloc( a )
+#endif /* SAFE_MALLOC */
+
+// set these before calling CheckParm
+extern int myargc;
+extern char **myargv;
+
+char *strlower( char *in );
+int Q_strncasecmp( const char *s1, const char *s2, int n );
+int Q_stricmp( const char *s1, const char *s2 );
+void Q_getwd( char *out );
+
+int Q_filelength( FILE *f );
+int FileTime( const char *path );
+
+void Q_mkdir( const char *path );
+
+extern char qdir[1024];
+extern char gamedir[1024];
+extern char writedir[1024];
+extern char *moddirparam;
+void SetQdirFromPath( const char *path );
+char *ExpandArg( const char *path ); // from cmd line
+char *ExpandPath( const char *path ); // from scripts
+char *ExpandGamePath( const char *path );
+char *ExpandPathAndArchive( const char *path );
+void ExpandWildcards( int *argc, char ***argv );
+
+
+double I_FloatTime( void );
+
+void Error( const char *error, ... )
+#ifdef __GNUC__
+__attribute__( ( noreturn ) )
+#endif
+;
+int CheckParm( const char *check );
+
+FILE *SafeOpenWrite( const char *filename );
+FILE *SafeOpenRead( const char *filename );
+void SafeRead( FILE *f, void *buffer, int count );
+void SafeWrite( FILE *f, const void *buffer, int count );
+
+int LoadFile( const char *filename, void **bufferptr );
+int LoadFileBlock( const char *filename, void **bufferptr );
+int TryLoadFile( const char *filename, void **bufferptr );
+void SaveFile( const char *filename, const void *buffer, int count );
+qboolean FileExists( const char *filename );
+
+void DefaultExtension( char *path, const char *extension );
+void DefaultPath( char *path, const char *basepath );
+void StripFilename( char *path );
+void StripExtension( char *path );
+
+void ExtractFilePath( const char *path, char *dest );
+void ExtractFileBase( const char *path, char *dest );
+void ExtractFileExtension( const char *path, char *dest );
+
+int ParseNum( const char *str );
+
+short BigShort( short l );
+short LittleShort( short l );
+int BigLong( int l );
+int LittleLong( int l );
+float BigFloat( float l );
+float LittleFloat( float l );
+
+
+char *COM_Parse( char *data );
+
+extern char com_token[1024];
+extern qboolean com_eof;
+
+char *copystring( const char *s );
+
+
+void CRC_Init( unsigned short *crcvalue );
+void CRC_ProcessByte( unsigned short *crcvalue, byte data );
+unsigned short CRC_Value( unsigned short crcvalue );
+
+void CreatePath( const char *path );
+void QCopyFile( const char *from, const char *to );
+
+extern qboolean archive;
+extern char archivedir[1024];
+
+// sleep for the given amount of milliseconds
+void Sys_Sleep( int n );
+
+// for compression routines
+typedef struct
+{
+ void *data;
+ int count, width, height;
+} cblock_t;
+
+
+#endif