summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/display/nr-filter-turbulence.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/display/nr-filter-turbulence.cpp b/src/display/nr-filter-turbulence.cpp
index a2a8c5756..19dedb67c 100644
--- a/src/display/nr-filter-turbulence.cpp
+++ b/src/display/nr-filter-turbulence.cpp
@@ -64,8 +64,10 @@ public:
for (i = 0; i < BSize; ++i) {
_latticeSelector[i] = i;
- _gradient[i][k][0] = static_cast<double>(_random() % (BSize*2) - BSize) / BSize;
- _gradient[i][k][1] = static_cast<double>(_random() % (BSize*2) - BSize) / BSize;
+ do {
+ _gradient[i][k][0] = static_cast<double>(_random() % (BSize*2) - BSize) / BSize;
+ _gradient[i][k][1] = static_cast<double>(_random() % (BSize*2) - BSize) / BSize;
+ } while(_gradient[i][k][0] == 0 && _gradient[i][k][1] == 0);
// normalize gradient
double s = hypot(_gradient[i][k][0], _gradient[i][k][1]);