summaryrefslogtreecommitdiff
path: root/src/SMAPI/IContentPack.cs
diff options
context:
space:
mode:
authorJesse Plamondon-Willard <github@jplamondonw.com>2018-08-18 23:33:38 -0400
committerJesse Plamondon-Willard <github@jplamondonw.com>2018-08-18 23:33:38 -0400
commit944b2995f1bf7719cfcfb9bafe713523dbd8883f (patch)
treebc0a7f30af261f1aa109acb32e56dd8c3b0cb680 /src/SMAPI/IContentPack.cs
parentd918ceb224bd6ed8b428219ab28a436896a30b45 (diff)
downloadSMAPI-944b2995f1bf7719cfcfb9bafe713523dbd8883f.tar.gz
SMAPI-944b2995f1bf7719cfcfb9bafe713523dbd8883f.tar.bz2
SMAPI-944b2995f1bf7719cfcfb9bafe713523dbd8883f.zip
no longer allow non-relative paths for IContentPack.Read/WriteJsonFile (#468)
Diffstat (limited to 'src/SMAPI/IContentPack.cs')
-rw-r--r--src/SMAPI/IContentPack.cs2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/SMAPI/IContentPack.cs b/src/SMAPI/IContentPack.cs
index fa793b13..9ba32394 100644
--- a/src/SMAPI/IContentPack.cs
+++ b/src/SMAPI/IContentPack.cs
@@ -25,12 +25,14 @@ namespace StardewModdingAPI
/// <typeparam name="TModel">The model type. This should be a plain class that has public properties for the data you want. The properties can be complex types.</typeparam>
/// <param name="path">The file path relative to the content pack directory.</param>
/// <returns>Returns the deserialised model, or <c>null</c> if the file doesn't exist or is empty.</returns>
+ /// <exception cref="InvalidOperationException">The <paramref name="path"/> is not relative or contains directory climbing (../).</exception>
TModel ReadJsonFile<TModel>(string path) where TModel : class;
/// <summary>Save data to a JSON file in the content pack's folder.</summary>
/// <typeparam name="TModel">The model type. This should be a plain class that has public properties for the data you want. The properties can be complex types.</typeparam>
/// <param name="path">The file path relative to the mod folder.</param>
/// <param name="data">The arbitrary data to save.</param>
+ /// <exception cref="InvalidOperationException">The <paramref name="path"/> is not relative or contains directory climbing (../).</exception>
void WriteJsonFile<TModel>(string path, TModel data) where TModel : class;
/// <summary>Load content from the content pack folder (if not already cached), and return it. When loading a <c>.png</c> file, this must be called outside the game's draw loop.</summary>