author | erik <erik> | 2007-01-22 23:01:41 (UTC) |
---|---|---|
committer | erik <erik> | 2007-01-22 23:01:41 (UTC) |
commit | adcf6075db477909dd8170a74862a6ef91a5127f (patch) (unidiff) | |
tree | da0a1e35c5d392271bce29e84d3af5c30a864f56 /noncore/games/minesweep/minefield.cpp | |
parent | 9b4871054d01a47b4c546952a0948553413840d6 (diff) | |
download | opie-adcf6075db477909dd8170a74862a6ef91a5127f.zip opie-adcf6075db477909dd8170a74862a6ef91a5127f.tar.gz opie-adcf6075db477909dd8170a74862a6ef91a5127f.tar.bz2 |
Each file in this commit had a problem where a function might return
a null value for a pointer and that null value was not checked.
Diffstat (limited to 'noncore/games/minesweep/minefield.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/games/minesweep/minefield.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/noncore/games/minesweep/minefield.cpp b/noncore/games/minesweep/minefield.cpp index 72c05b0..1987ea5 100644 --- a/noncore/games/minesweep/minefield.cpp +++ b/noncore/games/minesweep/minefield.cpp | |||
@@ -703,8 +703,10 @@ void MineField::readConfig(Config& cfg) | |||
703 | for ( int y = 0; y < numRows; y++ ) { | 703 | for ( int y = 0; y < numRows; y++ ) { |
704 | char code='A'+(x*17+y*101)%21; // Reduce the urge to cheat | 704 | char code='A'+(x*17+y*101)%21; // Reduce the urge to cheat |
705 | int st = (char)(QChar)grid[i++]-code; | 705 | int st = (char)(QChar)grid[i++]-code; |
706 | Mine* m = mine( y, x ); | 706 | Mine* m = mine( y, x ); |
707 | if (!m) | ||
708 | continue; | ||
707 | if ( st >= 5 ) { | 709 | if ( st >= 5 ) { |
708 | st-=5; | 710 | st-=5; |
709 | m->setMined(TRUE); | 711 | m->setMined(TRUE); |
710 | minecount++; | 712 | minecount++; |
@@ -727,9 +729,9 @@ void MineField::readConfig(Config& cfg) | |||
727 | } | 729 | } |
728 | for ( x = 0; x < numCols; x++ ) { | 730 | for ( x = 0; x < numCols; x++ ) { |
729 | for ( int y = 0; y < numRows; y++ ) { | 731 | for ( int y = 0; y < numRows; y++ ) { |
730 | Mine* m = mine( y, x ); | 732 | Mine* m = mine( y, x ); |
731 | if ( m->state() == Mine::Empty ) | 733 | if ( m && m->state() == Mine::Empty ) |
732 | m->setHint(getHint(y,x)); | 734 | m->setHint(getHint(y,x)); |
733 | } | 735 | } |
734 | } | 736 | } |
735 | } | 737 | } |