Mercurial > hg > batmud > ggrtf
changeset 1271:bb99e40405f6
Automagically create datapath directory if it does not seem to exist already.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Wed, 22 Dec 2010 22:42:12 +0000 |
parents | 30ec8596fb2d |
children | f22029a60ed6 |
files | ggrtf.tf |
diffstat | 1 files changed, 9 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/ggrtf.tf Wed Dec 22 20:26:56 2010 +0000 +++ b/ggrtf.tf Wed Dec 22 22:42:12 2010 +0000 @@ -558,7 +558,7 @@ ;; Save status /def -i gsave_fileopen=\ - /set gsave_filename=%{set_datapath}%{set_saveprefix}%{2}%;\ + /set gsave_filename=$[strcat(set_datapath,set_saveprefix,{2})]%;\ /set gsave_file=$[tfopen(gsave_filename, "w")]%;\ /if (gsave_file < 0)\ /gerror Could not create/open savefile '@{Cyellow}%{gsave_filename}@{n}', err=%{gsave_file}!%;\ @@ -567,7 +567,15 @@ /endif%;\ /return gsave_file + /def -i gsave =\ + /let _testfile=$[tfopen(strcat(set_datapath, "dirtest"), "w")]%;\ + /if (_testfile < 0)\ + /msq @{Cred}Datapath@{n} '@{Cyellow}%{set_datapath}@{n}' @{Cred}might not exist, trying to create directory.@{n}%;\ + /sys mkdir %{set_datapath}%;\ + /else \ + /test tfclose(_testfile)%;\ + /endif%;\ /if (gsave_fileopen("pre-init", "pre.tf") < 0)\ /break%;\ /else \