aboutsummaryrefslogtreecommitdiffstats
path: root/share/qbs/modules/Android/sdk/sdk.qbs
diff options
context:
space:
mode:
Diffstat (limited to 'share/qbs/modules/Android/sdk/sdk.qbs')
-rw-r--r--share/qbs/modules/Android/sdk/sdk.qbs11
1 files changed, 10 insertions, 1 deletions
diff --git a/share/qbs/modules/Android/sdk/sdk.qbs b/share/qbs/modules/Android/sdk/sdk.qbs
index 79ec9ad81..14ad92fdf 100644
--- a/share/qbs/modules/Android/sdk/sdk.qbs
+++ b/share/qbs/modules/Android/sdk/sdk.qbs
@@ -257,7 +257,16 @@ Module {
var rootElem = manifestData.documentElement();
if (!rootElem || !rootElem.isElement() || rootElem.tagName() != "manifest")
throw "No manifest tag found in '" + input.filePath + "'.";
- rootElem.setAttribute("package", product.Android.sdk.packageName);
+
+ // Quick sanity check. Don't try to be fancy; let's not risk rejecting valid names.
+ var packageName = product.Android.sdk.packageName;
+ if (!packageName.match(/^[^.]+(?:\.[^.]+)+$/)) {
+ throw "Package name '" + packageName + "' is not valid. Please set "
+ + "Android.sdk.packageName to a name following the "
+ + "'com.mycompany.myproduct' pattern."
+ }
+ rootElem.setAttribute("package", packageName);
+
manifestData.save(output.filePath, 4);
}
return cmd;