summaryrefslogtreecommitdiffstats
path: root/src/plugins/blackberry/mediaplayer/bbutil.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/blackberry/mediaplayer/bbutil.cpp')
-rw-r--r--src/plugins/blackberry/mediaplayer/bbutil.cpp31
1 files changed, 30 insertions, 1 deletions
diff --git a/src/plugins/blackberry/mediaplayer/bbutil.cpp b/src/plugins/blackberry/mediaplayer/bbutil.cpp
index 9fef98a3a..2e95c3571 100644
--- a/src/plugins/blackberry/mediaplayer/bbutil.cpp
+++ b/src/plugins/blackberry/mediaplayer/bbutil.cpp
@@ -40,7 +40,12 @@
****************************************************************************/
#include "bbutil.h"
-#include <QtCore/qstring.h>
+#include <QDebug>
+#include <QDir>
+#include <QFile>
+#include <QString>
+#include <QXmlStreamReader>
+
#include <mm/renderer.h>
QT_BEGIN_NAMESPACE
@@ -97,4 +102,28 @@ QString mmErrorMessage(const QString &msg, mmr_context_t *context, int *errorCod
}
}
+bool checkForDrmPermission()
+{
+ QDir sandboxDir = QDir::home(); // always returns 'data' directory
+ sandboxDir.cdUp(); // change to app sandbox directory
+
+ QFile file(sandboxDir.filePath("app/native/bar-descriptor.xml"));
+ if (!file.open(QIODevice::ReadOnly)) {
+ qWarning() << "checkForDrmPermission: Unable to open bar-descriptor.xml";
+ return false;
+ }
+
+ QXmlStreamReader reader(&file);
+ while (!reader.atEnd()) {
+ reader.readNextStartElement();
+ if (reader.name() == QLatin1String("action")
+ || reader.name() == QLatin1String("permission")) {
+ if (reader.readElementText().trimmed() == QLatin1String("access_protected_media"))
+ return true;
+ }
+ }
+
+ return false;
+}
+
QT_END_NAMESPACE