summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--noatun-plugins/dub/dub/dub.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/noatun-plugins/dub/dub/dub.cpp b/noatun-plugins/dub/dub/dub.cpp
index b5ff637..286ff95 100644
--- a/noatun-plugins/dub/dub/dub.cpp
+++ b/noatun-plugins/dub/dub/dub.cpp
@@ -35,6 +35,7 @@
#include <vector>
#include <algorithm>
+#include <random>
using std::vector;
using std::iterator;
@@ -548,9 +549,9 @@ void Dub::Shuffle_OneDir::init(const TQString& dir)
kdDebug(90010) << num_items << " file items" << endl;
for (int i=0; i<num_items; i++)
play_order[i] = i;
- Random random;
- Random::init();
- std::random_shuffle(play_order.begin(), play_order.end(), random);
+ std::random_device randomDev;
+ std::mt19937 randomGenerator(randomDev());
+ std::shuffle(play_order.begin(), play_order.end(), randomGenerator);
}
}
}