From 2ceb00adf9be25bdf6d4762c17941f389a470b0d Mon Sep 17 00:00:00 2001 From: Dmitry Jemerov Date: Wed, 7 Aug 2013 16:24:17 +0200 Subject: [PATCH] handle os.path.realpath in PyPathEvaluator (PY-9787) --- python/psi-api/src/com/jetbrains/python/PyNames.java | 1 + python/src/com/jetbrains/python/psi/impl/PyPathEvaluator.java | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/python/psi-api/src/com/jetbrains/python/PyNames.java b/python/psi-api/src/com/jetbrains/python/PyNames.java index ac40c1dc90bd..3143389c818e 100644 --- a/python/psi-api/src/com/jetbrains/python/PyNames.java +++ b/python/psi-api/src/com/jetbrains/python/PyNames.java @@ -70,6 +70,7 @@ public class PyNames { public static final String DIRNAME = "dirname"; public static final String ABSPATH = "abspath"; public static final String NORMPATH = "normpath"; + public static final String REALPATH = "realpath"; public static final String JOIN = "join"; public static final String REPLACE = "replace"; public static final String FILE = "__file__"; diff --git a/python/src/com/jetbrains/python/psi/impl/PyPathEvaluator.java b/python/src/com/jetbrains/python/psi/impl/PyPathEvaluator.java index 8229193280c8..6dd00439731d 100644 --- a/python/src/com/jetbrains/python/psi/impl/PyPathEvaluator.java +++ b/python/src/com/jetbrains/python/psi/impl/PyPathEvaluator.java @@ -41,7 +41,8 @@ public class PyPathEvaluator extends PyEvaluator { else if (call.isCalleeText(PyNames.JOIN) && args.length >= 1) { return evaluatePathInJoin(args, args.length); } - else if (call.isCalleeText(PyNames.NORMPATH) && args.length == 1) { + else if (call.isCalleeText(PyNames.NORMPATH, PyNames.REALPATH) && args.length == 1) { + // we don't care about the exact transformation performed by python but need to preserve the availability of the path return evaluate(args[0]); } else if (call.isCalleeText(PyNames.ABSPATH) && args.length == 1) {