author | zecke <zecke> | 2004-11-15 14:36:25 (UTC) |
---|---|---|
committer | zecke <zecke> | 2004-11-15 14:36:25 (UTC) |
commit | 2423fe1ba41caf6977afaf7df3156522b54db819 (patch) (side-by-side diff) | |
tree | c6b6a8952c41c9677150a281c5698655a18e652d /noncore/games | |
parent | 5e6ce0ba567dd9c8ae33353fcf1d0554b34241e8 (diff) | |
download | opie-2423fe1ba41caf6977afaf7df3156522b54db819.zip opie-2423fe1ba41caf6977afaf7df3156522b54db819.tar.gz opie-2423fe1ba41caf6977afaf7df3156522b54db819.tar.bz2 |
-Safe the replay via Global::applicationFileName
-do not use char casts to go from string to char* but
use QFile::encodeName so it works for non latin1 people as well
-rw-r--r-- | noncore/games/sfcave/sfcave.cpp | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/noncore/games/sfcave/sfcave.cpp b/noncore/games/sfcave/sfcave.cpp index 5dca427..d5aa38a 100644 --- a/noncore/games/sfcave/sfcave.cpp +++ b/noncore/games/sfcave/sfcave.cpp @@ -1,19 +1,20 @@ #include <stdio.h> #include <stdlib.h> #include <math.h> #include <time.h> #include <opie2/oapplicationfactory.h> #include <qpe/config.h> +#include <qpe/global.h> #include <qapplication.h> #include <qdir.h> #include "helpwindow.h" #include "sfcave.h" #define CAPTION "SFCave 1.13 by AndyQ" #define UP_THRUST 0.6 #define NO_THRUST 0.8 #define MAX_DOWN_THRUST 4.0 @@ -134,27 +135,25 @@ OPIE_EXPORT_APP( Opie::Core::OApplicationFactory<SFCave> ) SFCave :: SFCave( QWidget *w, const char *name, WFlags fl ) : QMainWindow( w, name, fl ) { showMaximized(); movel = true; int spd = 3; replayIt = 0; - replayFile = QDir::home().path(); - replayFile += "/sfcave.replay"; - printf( "%s\n", (const char *)replayFile ); + replayFile = Global::applicationFileName("sfcave", "replay"); sWidth = width(); sHeight = height(); segSize = sWidth/(MAPSIZE-1)+1; currentMenuNr = 0; currentGameType = 0; currentGameDifficulty = 0; setCaption( CAPTION ); showScoreZones = false; @@ -915,28 +914,28 @@ void SFCave :: saveScore() cfg.setGroup( "settings" ); QString key = "highScore_"; cfg.writeEntry( key + gameTypes[currentGameType] + "_" + dificultyOption[currentGameDifficulty], highestScore[currentGameType][currentGameDifficulty] ); key += CURRENT_GAME_TYPE; cfg.writeEntry( key, highestScore[currentGameType] ); #endif } void SFCave :: saveReplay() { FILE *out; - out = fopen( (const char *)replayFile, "w" ); + out = fopen( QFile::encodeName(replayFile).data(), "w" ); if ( !out ) { - printf( "Couldn't write to /home/root/sfcave.replay\n" ); + printf( "Couldn't write to %s\n", QFile::encodeName(replayFile).data() ); return; } // Build up string of values // Format is:: <landscape seed> <game type> <difficulty> <framenr> <framenr>....... QString val; val.sprintf( "%d %d %d ", currentSeed, currentGameType, currentGameDifficulty ); QListIterator<int> it( replayList ); while( it.current() ) { QString tmp; @@ -946,31 +945,31 @@ void SFCave :: saveReplay() ++it; } val += "\n"; QString line; line.sprintf( "%d\n", val.length() ); fwrite( (const char *)line, 1, line.length(), out ); fwrite( (const char *)val, 1, val.length(), out ); fclose( out ); - printf( "Replay saved to %s\n", (const char *)replayFile ); + printf( "Replay saved to %s\n", QFile::encodeName(replayFile).data() ); } void SFCave :: loadReplay() { - FILE *in = fopen( (const char *)replayFile, "r" ); + FILE *in = fopen( QFile::encodeName(replayFile).data() , "r" ); if ( in == 0 ) { printf( "Couldn't load replay file!\n" ); return; } // Read next line - contains the size of the options char line[10+1]; fgets( line, 10, in ); int length = -1; @@ -994,25 +993,25 @@ void SFCave :: loadReplay() replayList.clear(); for ( ; it != list.end(); ++it ) { int v = (*it).toInt(); replayList.append( new int( v ) ); } delete data; fclose( in ); - printf( "Replay loaded from %s\n", (const char *)replayFile ); + printf( "Replay loaded from %s\n", QFile::encodeName(replayFile).data() ); } //--------------- MENU CODE --------------------- void SFCave :: handleMenuKeys( QKeyEvent *e ) { switch( e->key() ) { case Qt::Key_Down: currentMenuOption[currentMenuNr] ++; if ( menuOptions[currentMenuNr][currentMenuOption[currentMenuNr]] == "" ) currentMenuOption[currentMenuNr] = 0; |