From: <ms...@us...> - 2009-03-03 20:27:12
|
Revision: 8994 http://wonder.svn.sourceforge.net/wonder/?rev=8994&view=rev Author: mschrag Date: 2009-03-03 20:27:10 +0000 (Tue, 03 Mar 2009) Log Message: ----------- ERXProperties' peer implementation of NSProperties.NestedProperties: We pull the canonical path here in case you symlink to a Properties file that has relative .includeProps paths in it (that you expect to load from the same folder as the symlink target). It's debatable whether this is actually the desired behavior all the time, but until I hear someone who needs the old way, I'm not going to increase the complexity by adding a config flag that has to propagate all over. Modified Paths: -------------- branches/Wonder_2_0_0_Branch/Wonder/Common/Frameworks/ERExtensions/Sources/er/extensions/ERXProperties.java Modified: branches/Wonder_2_0_0_Branch/Wonder/Common/Frameworks/ERExtensions/Sources/er/extensions/ERXProperties.java =================================================================== --- branches/Wonder_2_0_0_Branch/Wonder/Common/Frameworks/ERExtensions/Sources/er/extensions/ERXProperties.java 2009-03-03 08:45:33 UTC (rev 8993) +++ branches/Wonder_2_0_0_Branch/Wonder/Common/Frameworks/ERExtensions/Sources/er/extensions/ERXProperties.java 2009-03-03 20:27:10 UTC (rev 8994) @@ -1541,9 +1541,15 @@ } public synchronized void load(File propsFile) throws IOException { - _files.push(propsFile.getParentFile()); + // MS: We pull the canonical path here in case you symlink to a Properties file + // that has relative .includeProps paths in it (that you expect to load from the same + // folder as the symlink target). It's debatable whether this is actually the desired + // behavior all the time, but until I hear someone who needs the old way, I'm not + // going to increase the complexity by adding a config flag that has to propagate all over. + File canonicalPropsFile = propsFile.getCanonicalFile(); + _files.push(canonicalPropsFile.getParentFile()); try { - BufferedInputStream is = new BufferedInputStream(new FileInputStream(propsFile)); + BufferedInputStream is = new BufferedInputStream(new FileInputStream(canonicalPropsFile)); try { load(is); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |