(svn r8497) -Codechange: Increase the size of the sound/video/music-drivers to 32 bytes (instead of 16) so their actual parameters can be passed. Sound has for example 'bufsize' and 'hz'. Also use the recently introduced StrEmpty().

This commit is contained in:
Darkvater 2007-01-31 20:20:36 +00:00
parent 63a5b0e8be
commit c5c0a54a50
2 changed files with 10 additions and 11 deletions

View File

@ -149,7 +149,7 @@ static void showhelp(void)
"\n" "\n"
"Command line options:\n" "Command line options:\n"
" -v drv = Set video driver (see below)\n" " -v drv = Set video driver (see below)\n"
" -s drv = Set sound driver (see below)\n" " -s drv = Set sound driver (see below) (param bufsize,hz)\n"
" -m drv = Set music driver (see below)\n" " -m drv = Set music driver (see below)\n"
" -r res = Set resolution (for instance 800x600)\n" " -r res = Set resolution (for instance 800x600)\n"
" -h = Display this help text\n" " -h = Display this help text\n"
@ -337,7 +337,7 @@ int ttd_main(int argc, char *argv[])
{ {
int i; int i;
const char *optformat; const char *optformat;
char musicdriver[16], sounddriver[16], videodriver[16]; char musicdriver[32], sounddriver[32], videodriver[32];
int resolution[2] = {0,0}; int resolution[2] = {0,0};
Year startyear = INVALID_YEAR; Year startyear = INVALID_YEAR;
uint generation_seed = GENERATE_NEW_SEED; uint generation_seed = GENERATE_NEW_SEED;
@ -350,7 +350,7 @@ int ttd_main(int argc, char *argv[])
uint16 dedicated_port = 0; uint16 dedicated_port = 0;
#endif /* ENABLE_NETWORK */ #endif /* ENABLE_NETWORK */
musicdriver[0] = sounddriver[0] = videodriver[0] = 0; musicdriver[0] = sounddriver[0] = videodriver[0] = '\0';
_game_mode = GM_MENU; _game_mode = GM_MENU;
_switch_mode = SM_MENU; _switch_mode = SM_MENU;
@ -381,14 +381,13 @@ int ttd_main(int argc, char *argv[])
strcpy(sounddriver, "null"); strcpy(sounddriver, "null");
strcpy(videodriver, "dedicated"); strcpy(videodriver, "dedicated");
dedicated = true; dedicated = true;
if (mgo.opt != NULL) if (mgo.opt != NULL) {
{
/* Use the existing method for parsing (openttd -n). /* Use the existing method for parsing (openttd -n).
* However, we do ignore the #player part. */ * However, we do ignore the #player part. */
const char *temp = NULL; const char *temp = NULL;
const char *port = NULL; const char *port = NULL;
ParseConnectionString(&temp, &port, mgo.opt); ParseConnectionString(&temp, &port, mgo.opt);
if (*mgo.opt != '\0') dedicated_host = mgo.opt; if (!StrEmpty(mgo.opt)) dedicated_host = mgo.opt;
if (port != NULL) dedicated_port = atoi(port); if (port != NULL) dedicated_port = atoi(port);
} }
break; break;
@ -440,10 +439,10 @@ int ttd_main(int argc, char *argv[])
LoadFromHighScore(); LoadFromHighScore();
// override config? // override config?
if (musicdriver[0]) ttd_strlcpy(_ini_musicdriver, musicdriver, sizeof(_ini_musicdriver)); if (!StrEmpty(musicdriver)) ttd_strlcpy(_ini_musicdriver, musicdriver, sizeof(_ini_musicdriver));
if (sounddriver[0]) ttd_strlcpy(_ini_sounddriver, sounddriver, sizeof(_ini_sounddriver)); if (!StrEmpty(sounddriver)) ttd_strlcpy(_ini_sounddriver, sounddriver, sizeof(_ini_sounddriver));
if (videodriver[0]) ttd_strlcpy(_ini_videodriver, videodriver, sizeof(_ini_videodriver)); if (!StrEmpty(videodriver)) ttd_strlcpy(_ini_videodriver, videodriver, sizeof(_ini_videodriver));
if (resolution[0]) { _cur_resolution[0] = resolution[0]; _cur_resolution[1] = resolution[1]; } if (resolution[0] != 0) { _cur_resolution[0] = resolution[0]; _cur_resolution[1] = resolution[1]; }
if (startyear != INVALID_YEAR) _patches_newgame.starting_year = startyear; if (startyear != INVALID_YEAR) _patches_newgame.starting_year = startyear;
if (generation_seed != GENERATE_NEW_SEED) _patches_newgame.generation_seed = generation_seed; if (generation_seed != GENERATE_NEW_SEED) _patches_newgame.generation_seed = generation_seed;

View File

@ -312,7 +312,7 @@ VARDEF SmallFiosItem _file_to_saveload;
VARDEF Vehicle *_place_clicked_vehicle; VARDEF Vehicle *_place_clicked_vehicle;
VARDEF char _ini_videodriver[16], _ini_musicdriver[16], _ini_sounddriver[16]; VARDEF char _ini_videodriver[32], _ini_musicdriver[32], _ini_sounddriver[32];
// Used for dynamic language support // Used for dynamic language support
typedef struct { typedef struct {