Neues normalize_path().

Bessere Variante (inkl. besserem Namen) von _get_path.
Normalisiert den Pfad, expandiert Platzhalter auf Wunsch,
benutzt ggf. TI oder TP als User, wenn nicht angegeben.

Change-Id: Ifd7de108a601d6419509a393a294358361337da4
diff --git a/secure/master/file_access.c b/secure/master/file_access.c
index 16e7d23..f810c06 100644
--- a/secure/master/file_access.c
+++ b/secure/master/file_access.c
@@ -25,7 +25,7 @@
 // expand bestimmt, ob im Pfad +, ~ oder P_CURRENTDIR expandiert werden oder
 // nicht.
 string *path_array(string path, string user, int expand) {
-    string cwd;
+  string cwd;
 
   if (!sizeof(path))
     return ({"",""}); // additional "" to yield "/" later.
@@ -118,11 +118,20 @@
   return implode(path_array(path, user, 0),"/");
 }
 
+// Besser benamste Version von _get_path().
+// Normalisiert den Pfad, expandiert Platzhalter auf Wunsch, benutzt ggf. TI
+// oder TP als User, wenn nicht angegeben.
+varargs string normalize_path(string path, string user, int expand) {
+  if (!user && (TI || TP))
+    user = getuid(TI || TP);
+  return implode(path_array(path, user, expand), "/");
+}
+
 // Diese Funktion wird vom Driver nur fuer den Editor ed gerufen, aber der
 // Rest vom MG ruft es teilweise auch. Hier erfolgt eine Expansion von
 // Platzhaltern im Pfad.
-string make_path_absolute(string str) {
-  return implode(path_array(path, getuid(TP), 1),"/");
+string make_path_absolute(string path) {
+  return normalize_path(path, getuid(TI || TP), 1);
 }
 
 static int project_access(string user, string project)