From 474e48bbd2b45e3c40734ffa7f2f1b557ef4e5d5 Mon Sep 17 00:00:00 2001 From: Scott Barta Date: Mon, 1 Jul 2013 16:33:44 -0700 Subject: Escaping for pathnames in template XML files Does proper XML escaping in Freemarker XML templates to avoid problems with pathnames that contain XML-sensitive characters. Change-Id: I1f191ccabd0c81af821c7bbdf88bbb23ba42ff9c --- templates/activities/BlankActivity/recipe.xml.ftl | 32 +++++++++++----------- .../activities/FullscreenActivity/recipe.xml.ftl | 24 ++++++++-------- templates/activities/LoginActivity/recipe.xml.ftl | 16 +++++------ .../activities/MasterDetailFlow/recipe.xml.ftl | 26 +++++++++--------- .../activities/SettingsActivity/recipe.xml.ftl | 16 +++++------ 5 files changed, 57 insertions(+), 57 deletions(-) (limited to 'templates/activities') diff --git a/templates/activities/BlankActivity/recipe.xml.ftl b/templates/activities/BlankActivity/recipe.xml.ftl index 148b09d..1889cdc 100644 --- a/templates/activities/BlankActivity/recipe.xml.ftl +++ b/templates/activities/BlankActivity/recipe.xml.ftl @@ -1,57 +1,57 @@ + to="${escapeXmlAttribute(manifestOut)}/AndroidManifest.xml" /> + to="${escapeXmlAttribute(resOut)}/menu/${menuName}.xml" /> + to="${escapeXmlAttribute(resOut)}/values/strings.xml" /> + to="${escapeXmlAttribute(resOut)}/values/dimens.xml" /> + to="${escapeXmlAttribute(resOut)}/values-sw600dp/dimens.xml" /> + to="${escapeXmlAttribute(resOut)}/values-sw720dp-land/dimens.xml" /> <#if navType?contains("pager")> + to="${escapeXmlAttribute(resOut)}/layout/${layoutName}.xml" /> + to="${escapeXmlAttribute(resOut)}/layout/fragment_${classToResource(activityClass)}_dummy.xml" /> <#elseif navType == "tabs" || navType == "dropdown"> + to="${escapeXmlAttribute(resOut)}/layout/${layoutName}.xml" /> + to="${escapeXmlAttribute(resOut)}/layout/fragment_${classToResource(activityClass)}_dummy.xml" /> <#else> + to="${escapeXmlAttribute(resOut)}/layout/${layoutName}.xml" /> <#if navType == "none"> + to="${escapeXmlAttribute(srcOut)}/${activityClass}.java" /> <#elseif navType == "tabs_pager" || navType == "pager_strip"> + to="${escapeXmlAttribute(srcOut)}/${activityClass}.java" /> <#elseif navType == "tabs"> + to="${escapeXmlAttribute(srcOut)}/${activityClass}.java" /> <#elseif navType == "dropdown"> + to="${escapeXmlAttribute(srcOut)}/${activityClass}.java" /> - + diff --git a/templates/activities/FullscreenActivity/recipe.xml.ftl b/templates/activities/FullscreenActivity/recipe.xml.ftl index b3e1f20..6f121a8 100644 --- a/templates/activities/FullscreenActivity/recipe.xml.ftl +++ b/templates/activities/FullscreenActivity/recipe.xml.ftl @@ -1,30 +1,30 @@ + to="${escapeXmlAttribute(manifestOut)}/AndroidManifest.xml" /> + to="${escapeXmlAttribute(resOut)}/values/attrs.xml" /> + to="${escapeXmlAttribute(resOut)}/values/colors.xml" /> + to="${escapeXmlAttribute(resOut)}/values/styles.xml" /> + to="${escapeXmlAttribute(resOut)}/values-v11/styles.xml" /> + to="${escapeXmlAttribute(resOut)}/layout/${layoutName}.xml" /> + to="${escapeXmlAttribute(resOut)}/values/strings.xml" /> + to="${escapeXmlAttribute(srcOut)}/${activityClass}.java" /> + to="${escapeXmlAttribute(srcOut)}/util/SystemUiHider.java" /> + to="${escapeXmlAttribute(srcOut)}/util/SystemUiHiderBase.java" /> + to="${escapeXmlAttribute(srcOut)}/util/SystemUiHiderHoneycomb.java" /> - + diff --git a/templates/activities/LoginActivity/recipe.xml.ftl b/templates/activities/LoginActivity/recipe.xml.ftl index 58d823f..94f93d6 100644 --- a/templates/activities/LoginActivity/recipe.xml.ftl +++ b/templates/activities/LoginActivity/recipe.xml.ftl @@ -1,22 +1,22 @@ + to="${escapeXmlAttribute(manifestOut)}/AndroidManifest.xml" /> + to="${escapeXmlAttribute(resOut)}/values/styles.xml" /> + to="${escapeXmlAttribute(resOut)}/values-large/styles.xml" /> + to="${escapeXmlAttribute(resOut)}/menu/${menuName}.xml" /> + to="${escapeXmlAttribute(resOut)}/layout/${layoutName}.xml" /> + to="${escapeXmlAttribute(resOut)}/values/strings_${simpleName}.xml" /> + to="${escapeXmlAttribute(srcOut)}/${activityClass}.java" /> - + diff --git a/templates/activities/MasterDetailFlow/recipe.xml.ftl b/templates/activities/MasterDetailFlow/recipe.xml.ftl index c06e517..4b39f74 100644 --- a/templates/activities/MasterDetailFlow/recipe.xml.ftl +++ b/templates/activities/MasterDetailFlow/recipe.xml.ftl @@ -1,32 +1,32 @@ + to="${escapeXmlAttribute(manifestOut)}/AndroidManifest.xml" /> + to="${escapeXmlAttribute(resOut)}/values-large/refs.xml" /> + to="${escapeXmlAttribute(resOut)}/values-sw600dp/refs.xml" /> + to="${escapeXmlAttribute(resOut)}/values/strings.xml" /> + to="${escapeXmlAttribute(resOut)}/layout/activity_${detail_name}.xml" /> + to="${escapeXmlAttribute(resOut)}/layout/activity_${collection_name}.xml" /> + to="${escapeXmlAttribute(resOut)}/layout/activity_${extractLetters(objectKind?lower_case)}_twopane.xml" /> + to="${escapeXmlAttribute(resOut)}/layout/fragment_${detail_name}.xml" /> + to="${escapeXmlAttribute(srcOut)}/${DetailName}Activity.java" /> + to="${escapeXmlAttribute(srcOut)}/${DetailName}Fragment.java" /> + to="${escapeXmlAttribute(srcOut)}/${CollectionName}Activity.java" /> + to="${escapeXmlAttribute(srcOut)}/${CollectionName}Fragment.java" /> + to="${escapeXmlAttribute(srcOut)}/dummy/DummyContent.java" /> diff --git a/templates/activities/SettingsActivity/recipe.xml.ftl b/templates/activities/SettingsActivity/recipe.xml.ftl index 6f68147..b6d46ce 100644 --- a/templates/activities/SettingsActivity/recipe.xml.ftl +++ b/templates/activities/SettingsActivity/recipe.xml.ftl @@ -1,22 +1,22 @@ + to="${escapeXmlAttribute(manifestOut)}/AndroidManifest.xml" /> + to="${escapeXmlAttribute(resOut)}/xml/pref_data_sync.xml" /> + to="${escapeXmlAttribute(resOut)}/xml/pref_general.xml" /> + to="${escapeXmlAttribute(resOut)}/xml/pref_headers.xml" /> + to="${escapeXmlAttribute(resOut)}/xml/pref_notification.xml" /> + to="${escapeXmlAttribute(resOut)}/values/strings_${simpleName}.xml" /> + to="${escapeXmlAttribute(srcOut)}/${activityClass}.java" /> - + -- cgit v1.1