You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@freemarker.apache.org by dd...@apache.org on 2015/09/25 20:59:19 UTC
incubator-freemarker git commit: Bug #439: FileTemplateLoader with
emulateCaseSensitiveFileSystem set to true (used for development) wasn't
properly synchronized,
leading to random NullPointerException-s or other misbehavior.
Repository: incubator-freemarker
Updated Branches:
refs/heads/2.3-gae f32a506a3 -> dfd07ec50
Bug #439: FileTemplateLoader with emulateCaseSensitiveFileSystem set to true (used for development) wasn't properly synchronized, leading to random NullPointerException-s or other misbehavior.
Project: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/commit/dfd07ec5
Tree: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/tree/dfd07ec5
Diff: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/diff/dfd07ec5
Branch: refs/heads/2.3-gae
Commit: dfd07ec50f0f4b9fa9eedc17ddba0d65fc001f3f
Parents: f32a506
Author: ddekany <dd...@apache.org>
Authored: Fri Sep 25 20:58:58 2015 +0200
Committer: ddekany <dd...@apache.org>
Committed: Fri Sep 25 20:58:58 2015 +0200
----------------------------------------------------------------------
src/main/java/freemarker/cache/FileTemplateLoader.java | 6 ++++--
src/manual/book.xml | 11 +++++++++++
2 files changed, 15 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/dfd07ec5/src/main/java/freemarker/cache/FileTemplateLoader.java
----------------------------------------------------------------------
diff --git a/src/main/java/freemarker/cache/FileTemplateLoader.java b/src/main/java/freemarker/cache/FileTemplateLoader.java
index 0a88340..50108ff 100644
--- a/src/main/java/freemarker/cache/FileTemplateLoader.java
+++ b/src/main/java/freemarker/cache/FileTemplateLoader.java
@@ -225,8 +225,10 @@ public class FileTemplateLoader implements TemplateLoader {
*/
private boolean isNameCaseCorrect(File source) throws IOException {
final String sourcePath = source.getPath();
- if (correctCasePaths.get(sourcePath) != null) {
- return true;
+ synchronized (correctCasePaths) {
+ if (correctCasePaths.get(sourcePath) != null) {
+ return true;
+ }
}
final File parentDir = source.getParentFile();
http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/dfd07ec5/src/manual/book.xml
----------------------------------------------------------------------
diff --git a/src/manual/book.xml b/src/manual/book.xml
index cf1efb6..57cdd37 100644
--- a/src/manual/book.xml
+++ b/src/manual/book.xml
@@ -26121,6 +26121,17 @@ TemplateModel x = env.getVariable("x"); // get variable x</programlisting>
</listitem>
<listitem>
+ <para>Bug fixed [<link
+ xlink:href="https://sourceforge.net/p/freemarker/bugs/439/">439</link>]:
+ <literal>FileTemplateLoader</literal> with
+ <literal>emulateCaseSensitiveFileSystem</literal> set to
+ <literal>true</literal> (used for development) wasn't properly
+ synchronized, leading to random
+ <literal>NullPointerException</literal>-s or other
+ misbehavior.</para>
+ </listitem>
+
+ <listitem>
<para>Bug fixed: The (rarely used) cause exception of
<literal>ParseException</literal>-s wasn't set</para>
</listitem>