[Scummvm-cvs-logs] CVS: scummvm/bs2 controls.cpp,1.35,1.36 controls.h,1.6,1.7
Torbj?rn Andersson
eriktorbjorn at users.sourceforge.net
Tue Oct 28 05:53:07 CET 2003
Update of /cvsroot/scummvm/scummvm/bs2
In directory sc8-pr-cvs1:/tmp/cvs-serv15519
Modified Files:
controls.cpp controls.h
Log Message:
If we fail to read the game settings, use sensible defaults.
Index: controls.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/bs2/controls.cpp,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -d -r1.35 -r1.36
--- controls.cpp 26 Oct 2003 15:42:49 -0000 1.35
+++ controls.cpp 28 Oct 2003 13:46:28 -0000 1.36
@@ -717,7 +717,7 @@
Button *_okButton;
Button *_cancelButton;
- int32 writeOptionSettings(void);
+ void writeOptionSettings(void);
public:
OptionsDialog() {
@@ -886,7 +886,7 @@
}
};
-int32 OptionsDialog::writeOptionSettings(void) {
+void OptionsDialog::writeOptionSettings(void) {
uint8 buff[10];
char filename[256];
SaveFile *fp;
@@ -905,18 +905,13 @@
buff[8] = gui._pointerTextSelected;
buff[9] = gui._stereoReversed;
- if (!(fp = mgr->open_savefile(filename, g_sword2->getSavePath(), true)))
- return 1;
+ fp = mgr->open_savefile(filename, g_sword2->getSavePath(), true);
- if (fp->write(buff, 10) != 10) {
- delete fp;
- delete mgr;
- return 2;
- }
+ if (fp)
+ fp->write(buff, 10);
delete fp;
delete mgr;
- return 0;
}
enum {
@@ -1464,7 +1459,7 @@
this_screen.new_palette = 99;
}
-int32 Gui::readOptionSettings(void) {
+void Gui::readOptionSettings(void) {
// settings file is 9 bytes long:
// 1 music volume
// 2 speech volume
@@ -1477,20 +1472,16 @@
// 9 object labels
uint8 buff[10];
+ uint8 default_settings[10] = { 14, 12, 12, 0, 0, 0, 2, 1, 1 };
char filename[256];
SaveFile *fp;
SaveFileManager *mgr = g_system->get_savefile_manager();
sprintf(filename, "%s-settings.dat", g_sword2->_targetName);
- if (!(fp = mgr->open_savefile(filename, g_sword2->getSavePath(), false)))
- return 1;
-
- if (fp->read(buff, 10) != 10) {
- delete fp;
- delete mgr;
- return 2;
- }
+ fp = mgr->open_savefile(filename, g_sword2->getSavePath(), false);
+ if (!fp || fp->read(buff, 10) != 10)
+ memcpy(buff, default_settings, sizeof(buff));
delete fp;
delete mgr;
@@ -1512,7 +1503,6 @@
g_sound->reverseStereo();
gui._stereoReversed = buff[9];
- return 0;
}
void Gui::optionControl(void) {
Index: controls.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/bs2/controls.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- controls.h 4 Oct 2003 01:09:29 -0000 1.6
+++ controls.h 28 Oct 2003 13:46:28 -0000 1.7
@@ -40,7 +40,7 @@
void quitControl(void);
void restartControl(void);
void optionControl(void);
- int32 readOptionSettings(void);
+ void readOptionSettings(void);
void updateGraphicsLevel(uint8 newLevel);
};
More information about the Scummvm-git-logs
mailing list