]> git.lizzy.rs Git - minetest.git/blobdiff - src/metadata.cpp
Remove dead code behind Irrlicht version checks
[minetest.git] / src / metadata.cpp
index d8a41218dacab37663e4d7edc6fbb1ba9cafc229..f02495fa47902b9db5ac3187d0b4b7beef07f474 100644 (file)
@@ -51,7 +51,7 @@ const std::string &IMetadata::getString(const std::string &name, std::string *pl
                return empty_string;
        }
 
-       return resolveString(*raw, place, recursion);
+       return resolveString(*raw, place, recursion, true);
 }
 
 bool IMetadata::getStringToRef(const std::string &name,
@@ -61,16 +61,21 @@ bool IMetadata::getStringToRef(const std::string &name,
        if (!raw)
                return false;
 
-       const std::string &resolved = resolveString(*raw, &str, recursion);
+       const std::string &resolved = resolveString(*raw, &str, recursion, true);
        if (&resolved != &str)
                str = resolved;
        return true;
 }
 
 const std::string &IMetadata::resolveString(const std::string &str, std::string *place,
-               u16 recursion) const
+               u16 recursion, bool deprecated) const
 {
        if (recursion <= 1 && str.substr(0, 2) == "${" && str[str.length() - 1] == '}') {
+               if (deprecated) {
+                       warningstream << "Deprecated use of recursive resolution syntax in metadata: ";
+                       safe_print_string(warningstream, str);
+                       warningstream << std::endl;
+               }
                // It may be the case that &str == place, but that's fine.
                return getString(str.substr(2, str.length() - 3), place, recursion + 1);
        }